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/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/dynamicMesh/motionSolver/elasticityMotionSolver/elasticityMotionSolver.C b/src/optimisation/adjointOptimisation/adjoint/dynamicMesh/motionSolver/elasticityMotionSolver/elasticityMotionSolver.C index 5b562382f79f27448c91536d54f1f8ab204b6aa8..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()); } 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/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/optimisation/designVariables/designVariables/designVariables.C b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/designVariables/designVariables.C index bd0b171d5890320f03d52c6d7e02780c7336305c..3c3c3e4f349b9a2e3a60967d5bdf720b20359c1f 100644 --- a/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/designVariables/designVariables.C +++ b/src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/designVariables/designVariables.C @@ -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/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/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/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/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..702d5b369d34b146c579cee52e7fc273f57c3cbf 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)) + ); } @@ -767,10 +746,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(); 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/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 c583938e48408661ded4a98d6a39a80a9a598252..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,16 +80,10 @@ 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) ); 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();