diff --git a/applications/solvers/electromagnetics/magneticFoam/createFields.H b/applications/solvers/electromagnetics/magneticFoam/createFields.H index 4db509c043..3c99aa939d 100644 --- a/applications/solvers/electromagnetics/magneticFoam/createFields.H +++ b/applications/solvers/electromagnetics/magneticFoam/createFields.H @@ -71,9 +71,8 @@ const surfaceVectorField& Sf = mesh.Sf(); - forAll(faces, i) + for (const label facei : faces) { - label facei = faces[i]; murf[facei] = muri; Mrf[facei] = Mri*(orientationi & Sf[facei]); } diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/pU/UEqns.H b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/pU/UEqns.H index 99bc95cfd6..e325f6eca4 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/pU/UEqns.H +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/pU/UEqns.H @@ -1,7 +1,7 @@ Info<< "Constructing momentum equations" << endl; -fvVectorMatrix U1Eqn(U1, rho1.dimensions()*U1.dimensions()*dimVol/dimTime); -fvVectorMatrix U2Eqn(U2, rho2.dimensions()*U2.dimensions()*dimVol/dimTime); +fvVectorMatrix U1Eqn(U1, rho1.dimensions()*U1.dimensions()*dimVolume/dimTime); +fvVectorMatrix U2Eqn(U2, rho2.dimensions()*U2.dimensions()*dimVolume/dimTime); { autoPtr diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/pUf/UEqns.H b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/pUf/UEqns.H index cfaaeef81b..160212a069 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/pUf/UEqns.H +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/pUf/UEqns.H @@ -1,7 +1,7 @@ Info<< "Constructing face momentum equations" << endl; -fvVectorMatrix U1Eqn(U1, rho1.dimensions()*U1.dimensions()*dimVol/dimTime); -fvVectorMatrix U2Eqn(U2, rho2.dimensions()*U2.dimensions()*dimVol/dimTime); +fvVectorMatrix U1Eqn(U1, rho1.dimensions()*U1.dimensions()*dimVolume/dimTime); +fvVectorMatrix U2Eqn(U2, rho2.dimensions()*U2.dimensions()*dimVolume/dimTime); { volScalarField Vm(fluid.Vm()); diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C index a1794a7820..a437eacb51 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C @@ -57,7 +57,7 @@ Foam::kineticTheoryModels::conductivityModels::HrenyaSinclair::HrenyaSinclair : conductivityModel(dict), coeffDict_(dict.optionalSubDict(typeName + "Coeffs")), - L_("L", dimensionSet(0, 1, 0, 0, 0), coeffDict_) + L_("L", dimLength, coeffDict_) {} diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C index 6607b16443..68e0c14cf4 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C @@ -57,7 +57,7 @@ Foam::kineticTheoryModels::viscosityModels::HrenyaSinclair::HrenyaSinclair : viscosityModel(dict), coeffDict_(dict.optionalSubDict(typeName + "Coeffs")), - L_("L", dimensionSet(0, 1, 0, 0, 0), coeffDict_) + L_("L", dimLength, coeffDict_) {} diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C index 05cf94b90b..d15d19d939 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C @@ -60,12 +60,7 @@ Foam::RASModels::phasePressureModel::phasePressureModel alphaMax_(coeffDict_.get("alphaMax")), preAlphaExp_(coeffDict_.get("preAlphaExp")), expMax_(coeffDict_.get("expMax")), - g0_ - ( - "g0", - dimensionSet(1, -1, -2, 0, 0), - coeffDict_.lookup("g0") - ) + g0_("g0", dimPressure, coeffDict_) { nut_ == dimensionedScalar(nut_.dimensions(), Zero); @@ -76,12 +71,6 @@ Foam::RASModels::phasePressureModel::phasePressureModel } -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::RASModels::phasePressureModel::~phasePressureModel() -{} - - // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // bool Foam::RASModels::phasePressureModel::read() @@ -101,10 +90,8 @@ bool Foam::RASModels::phasePressureModel::read() return true; } - else - { - return false; - } + + return false; } @@ -138,7 +125,7 @@ Foam::RASModels::phasePressureModel::R() const IOobject::NO_WRITE ), mesh_, - dimensioned(dimensionSet(0, 2, -2, 0, 0)) //Zero + dimensioned(dimensionSet(0, 2, -2, 0, 0), Zero) ); } diff --git a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.H b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.H index 48957ebeb8..66120ac933 100644 --- a/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.H +++ b/applications/solvers/multiphase/reactingEulerFoam/reactingTwoPhaseEulerFoam/twoPhaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.H @@ -132,7 +132,7 @@ public: //- Destructor - virtual ~phasePressureModel(); + virtual ~phasePressureModel() = default; // Member Functions diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pU/UEqns.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pU/UEqns.H index bc8ad0f556..f79037e33a 100644 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/pU/UEqns.H +++ b/applications/solvers/multiphase/twoPhaseEulerFoam/pU/UEqns.H @@ -4,8 +4,8 @@ MRF.correctBoundaryVelocity(U1); MRF.correctBoundaryVelocity(U2); MRF.correctBoundaryVelocity(U); -fvVectorMatrix U1Eqn(U1, rho1.dimensions()*U1.dimensions()*dimVol/dimTime); -fvVectorMatrix U2Eqn(U2, rho2.dimensions()*U2.dimensions()*dimVol/dimTime); +fvVectorMatrix U1Eqn(U1, rho1.dimensions()*U1.dimensions()*dimVolume/dimTime); +fvVectorMatrix U2Eqn(U2, rho2.dimensions()*U2.dimensions()*dimVolume/dimTime); volScalarField Kd(fluid.Kd()); diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/UEqns.H b/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/UEqns.H index 0f46ae5b85..e230ec234a 100644 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/UEqns.H +++ b/applications/solvers/multiphase/twoPhaseEulerFoam/pUf/UEqns.H @@ -5,8 +5,8 @@ MRF.correctBoundaryVelocity(U2); MRF.correctBoundaryVelocity(U); Info<< "Constructing face momentum equations" << endl; -fvVectorMatrix U1Eqn(U1, rho1.dimensions()*U1.dimensions()*dimVol/dimTime); -fvVectorMatrix U2Eqn(U2, rho2.dimensions()*U2.dimensions()*dimVol/dimTime); +fvVectorMatrix U1Eqn(U1, rho1.dimensions()*U1.dimensions()*dimVolume/dimTime); +fvVectorMatrix U2Eqn(U2, rho2.dimensions()*U2.dimensions()*dimVolume/dimTime); { volScalarField Vm(fluid.Vm()); diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C index a1794a7820..a437eacb51 100644 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C +++ b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/conductivityModel/HrenyaSinclair/HrenyaSinclairConductivity.C @@ -57,7 +57,7 @@ Foam::kineticTheoryModels::conductivityModels::HrenyaSinclair::HrenyaSinclair : conductivityModel(dict), coeffDict_(dict.optionalSubDict(typeName + "Coeffs")), - L_("L", dimensionSet(0, 1, 0, 0, 0), coeffDict_) + L_("L", dimLength, coeffDict_) {} diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C index 71fdca8d88..e5e7f8bf97 100644 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C +++ b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/kineticTheoryModel/kineticTheoryModel.C @@ -114,7 +114,7 @@ Foam::RASModels::kineticTheoryModel::kineticTheoryModel maxNut_ ( "maxNut", - dimensionSet(0,2,-1,0,0), + dimViscosity, coeffDict_.lookupOrDefault("maxNut",1000) ), @@ -142,7 +142,7 @@ Foam::RASModels::kineticTheoryModel::kineticTheoryModel IOobject::NO_WRITE ), U.mesh(), - dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), Zero) + dimensionedScalar(dimViscosity, Zero) ), gs0_ @@ -156,7 +156,7 @@ Foam::RASModels::kineticTheoryModel::kineticTheoryModel IOobject::NO_WRITE ), U.mesh(), - dimensionedScalar(dimensionSet(0, 0, 0, 0, 0), Zero) + dimensionedScalar(dimless, Zero) ), kappa_ @@ -184,7 +184,7 @@ Foam::RASModels::kineticTheoryModel::kineticTheoryModel IOobject::AUTO_WRITE ), U.mesh(), - dimensionedScalar(dimensionSet(0, 2, -1, 0, 0), Zero) + dimensionedScalar(dimViscosity, Zero) ) { if (type == typeName) diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C index 6607b16443..68e0c14cf4 100644 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C +++ b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/kineticTheoryModels/viscosityModel/HrenyaSinclair/HrenyaSinclairViscosity.C @@ -57,7 +57,7 @@ Foam::kineticTheoryModels::viscosityModels::HrenyaSinclair::HrenyaSinclair : viscosityModel(dict), coeffDict_(dict.optionalSubDict(typeName + "Coeffs")), - L_("L", dimensionSet(0, 1, 0, 0, 0), coeffDict_) + L_("L", dimLength, coeffDict_) {} diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C index 64fb24755e..d699973ef0 100644 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C +++ b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.C @@ -63,12 +63,7 @@ Foam::RASModels::phasePressureModel::phasePressureModel alphaMax_(coeffDict_.get("alphaMax")), preAlphaExp_(coeffDict_.get("preAlphaExp")), expMax_(coeffDict_.get("expMax")), - g0_ - ( - "g0", - dimensionSet(1, -1, -2, 0, 0), - coeffDict_.lookup("g0") - ) + g0_("g0", dimPressure, coeffDict_) { nut_ == dimensionedScalar(nut_.dimensions(), Zero); @@ -79,12 +74,6 @@ Foam::RASModels::phasePressureModel::phasePressureModel } -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -Foam::RASModels::phasePressureModel::~phasePressureModel() -{} - - // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // bool Foam::RASModels::phasePressureModel::read() @@ -107,10 +96,8 @@ bool Foam::RASModels::phasePressureModel::read() return true; } - else - { - return false; - } + + return false; } diff --git a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.H b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.H index f927e6194a..bd3ab13947 100644 --- a/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.H +++ b/applications/solvers/multiphase/twoPhaseEulerFoam/phaseCompressibleTurbulenceModels/phasePressureModel/phasePressureModel.H @@ -136,7 +136,7 @@ public: //- Destructor - virtual ~phasePressureModel(); + virtual ~phasePressureModel() = default; // Member Functions diff --git a/applications/utilities/preProcessing/createZeroDirectory/solverTemplate.C b/applications/utilities/preProcessing/createZeroDirectory/solverTemplate.C index 1e07af5e0c..ab3effa545 100644 --- a/applications/utilities/preProcessing/createZeroDirectory/solverTemplate.C +++ b/applications/utilities/preProcessing/createZeroDirectory/solverTemplate.C @@ -221,7 +221,7 @@ void Foam::solverTemplate::setRegionProperties fieldDimensions_[regionI].set ( i, - new dimensionSet(dict.lookup("dimensions")) + new dimensionSet(dict, "dimensions") ); } } diff --git a/src/OpenFOAM/dimensionSet/dimensionSet.H b/src/OpenFOAM/dimensionSet/dimensionSet.H index 4c2dc86ebb..6218815af5 100644 --- a/src/OpenFOAM/dimensionSet/dimensionSet.H +++ b/src/OpenFOAM/dimensionSet/dimensionSet.H @@ -68,14 +68,14 @@ public: typedef FixedList list_type; - // Member constants + // Member Constants enum { nDimensions = 7 //!< 7 base dimensions }; - //- Define an enumeration for the names of the dimension exponents + //- Enumeration for the dimension exponents enum dimensionType { MASS, //!< kilogram kg @@ -189,9 +189,12 @@ public: //- Construct from exponents for all seven dimensions dimensionSet(const FixedList& dimensions); - //- Copy constructor + //- Copy construct dimensionSet(const dimensionSet& ds); + //- Construct from dictionary entry - usually "dimensions". + dimensionSet(const dictionary& dict, const word& entryName); + //- Construct and return a clone autoPtr clone() const { diff --git a/src/OpenFOAM/dimensionSet/dimensionSetIO.C b/src/OpenFOAM/dimensionSet/dimensionSetIO.C index b1e0d296c5..4b1f1f7bc3 100644 --- a/src/OpenFOAM/dimensionSet/dimensionSetIO.C +++ b/src/OpenFOAM/dimensionSet/dimensionSetIO.C @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2019 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -30,6 +30,17 @@ License // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // +Foam::dimensionSet::dimensionSet(const dictionary& dict, const word& entryName) +{ + const entry& e = dict.lookupEntry(entryName, keyType::REGEX); + ITstream& is = e.stream(); + + is >> *this; + + e.checkITstream(is); +} + + Foam::dimensionSet::dimensionSet(Istream& is) { is >> *this; @@ -57,7 +68,7 @@ void Foam::dimensionSet::tokeniser::push(const token& t) } else { - size_++; + ++size_; } } @@ -620,7 +631,7 @@ Foam::Ostream& Foam::dimensionSet::write if (writeUnits.valid() && os.format() == IOstream::ASCII) { scalarField exponents(dimensionSet::nDimensions); - for (int d=0; d::readField const word& fieldDictEntry ) { - dimensions_.reset(dimensionSet(fieldDict.lookup("dimensions"))); + dimensions_.reset(dimensionSet(fieldDict, "dimensions")); // Note: oriented state may have already been set on construction // - if so - do not reset by re-reading diff --git a/src/OpenFOAM/fields/UniformDimensionedFields/UniformDimensionedField.C b/src/OpenFOAM/fields/UniformDimensionedFields/UniformDimensionedField.C index 123c3b6814..b0422bf269 100644 --- a/src/OpenFOAM/fields/UniformDimensionedFields/UniformDimensionedField.C +++ b/src/OpenFOAM/fields/UniformDimensionedFields/UniformDimensionedField.C @@ -85,6 +85,7 @@ bool Foam::UniformDimensionedField::readData(Istream& is) dictionary dict(is); scalar multiplier; this->dimensions().read(dict.lookup("dimensions"), multiplier); + dict.readEntry("value", this->value()); this->value() *= multiplier; diff --git a/src/combustionModels/FSD/reactionRateFlameAreaModels/relaxation/relaxation.C b/src/combustionModels/FSD/reactionRateFlameAreaModels/relaxation/relaxation.C index f242e6e61f..a1c8b76271 100644 --- a/src/combustionModels/FSD/reactionRateFlameAreaModels/relaxation/relaxation.C +++ b/src/combustionModels/FSD/reactionRateFlameAreaModels/relaxation/relaxation.C @@ -113,8 +113,6 @@ void Foam::reactionRateFlameAreaModels::relaxation::correct const volScalarField omegaInf(correlation_.omega0Sigma(sigmaTotal)); - dimensionedScalar sigma0("sigma0", sigma.dimensions(), Zero); - const volScalarField tau(C_*mag(sigmaTotal)); volScalarField Rc @@ -157,10 +155,8 @@ bool Foam::reactionRateFlameAreaModels::relaxation::read ); return true; } - else - { - return false; - } + + return false; } // ************************************************************************* // diff --git a/tutorials/basic/potentialFoam/cylinder/system/controlDict b/tutorials/basic/potentialFoam/cylinder/system/controlDict index d3ac50be4d..0dc0fde47f 100644 --- a/tutorials/basic/potentialFoam/cylinder/system/controlDict +++ b/tutorials/basic/potentialFoam/cylinder/system/controlDict @@ -70,12 +70,7 @@ functions } reduce(ULeft, maxOp()); - dimensionedScalar uInfX - ( - "uInfx", - dimensionSet(0, 1, -1, 0, 0), - ULeft - ); + dimensionedScalar uInfX("uInfx", dimVelocity, ULeft); Info << "U at inlet = " << uInfX.value() << " m/s" << endl; @@ -89,12 +84,7 @@ functions } reduce(magCylinder, maxOp()); - dimensionedScalar radius - ( - "radius", - dimensionSet(0, 1, 0, 0, 0), - magCylinder - ); + dimensionedScalar radius("radius", dimLength, magCylinder); Info << "Cylinder radius = " << radius.value() << " m" << endl;