diff --git a/applications/solvers/multiphase/compressibleInterFoam/Make/files b/applications/solvers/multiphase/compressibleInterFoam/Make/files index 0e009f09bcd767c85f1541acab665277ce0f5175..de5437219c00fd0ec616736c21ad3b570b7d9f5e 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/Make/files +++ b/applications/solvers/multiphase/compressibleInterFoam/Make/files @@ -1,4 +1,3 @@ -derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C compressibleInterFoam.C EXE = $(FOAM_APPBIN)/compressibleInterFoam diff --git a/applications/solvers/multiphase/compressibleInterFoam/Make/options b/applications/solvers/multiphase/compressibleInterFoam/Make/options index 48c253b21316c4e8b76158cc9627723d73fba48b..a6a130754a20800314f89a91ac4ae1a5dbf556d7 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/Make/options +++ b/applications/solvers/multiphase/compressibleInterFoam/Make/options @@ -1,16 +1,19 @@ EXE_INC = \ + -ItwoPhaseThermo \ + -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/transportModels \ -I$(LIB_SRC)/transportModels/incompressible/lnInclude \ -I$(LIB_SRC)/transportModels/interfaceProperties/lnInclude \ - -IphaseEquationsOfState/lnInclude \ -I$(LIB_SRC)/turbulenceModels/incompressible/turbulenceModel \ -I$(LIB_SRC)/finiteVolume/lnInclude EXE_LIBS = \ + -ltwoPhaseThermo \ + -lfluidThermophysicalModels \ + -lspecie \ -linterfaceProperties \ -ltwoPhaseInterfaceProperties \ -lincompressibleTransportModels \ - -lphaseEquationsOfState \ -lincompressibleTurbulenceModel \ -lincompressibleRASModels \ -lincompressibleLESModels \ diff --git a/applications/solvers/multiphase/compressibleInterFoam/TEqn.H b/applications/solvers/multiphase/compressibleInterFoam/TEqn.H index 2605ce345a973f19d71f43f83bbc18a2070de16d..d5183d5c4e9aee2f84882b39b1dce1736b4e5fcf 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/TEqn.H +++ b/applications/solvers/multiphase/compressibleInterFoam/TEqn.H @@ -1,20 +1,14 @@ { - volScalarField kByCv - ( - "kByCv", - (alpha1*k1/Cv1 + alpha2*k2/Cv2) - + (alpha1*rho1 + alpha2*rho2)*turbulence->nut() - ); - solve ( fvm::ddt(rho, T) + fvm::div(rhoPhi, T) - - fvm::laplacian(kByCv, T) - + p*fvc::div(phi)*(alpha1/Cv1 + alpha2/Cv2) + - fvm::laplacian(thermo.alphaEff(rho*turbulence->nut()), T) + + ( + p*fvc::div(phi) + + fvc::ddt(rho, K) + fvc::div(rhoPhi, K) + )*(alpha1/thermo.thermo1().Cv() + alpha2/thermo.thermo2().Cv()) ); - // Update compressibilities - psi1 = eos1->psi(p, T); - psi2 = eos2->psi(p, T); + thermo.correct(); } diff --git a/applications/solvers/multiphase/compressibleInterFoam/UEqn.H b/applications/solvers/multiphase/compressibleInterFoam/UEqn.H index 7cc250a66a2ab15a22680ab352f321e731b17c17..1c216a8bf7668894e57f08e4e80169c50b5fbfd9 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/UEqn.H +++ b/applications/solvers/multiphase/compressibleInterFoam/UEqn.H @@ -22,4 +22,6 @@ ) * mesh.magSf() ) ); + + K = 0.5*magSqr(U); } diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/options b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/options index d4d0fa9b5ab36194421b3a8e160265dff04dd6ef..48c21dfee59ebc6d83fd04bc213f36c2e5cd89df 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/options +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/Make/options @@ -1,5 +1,7 @@ EXE_INC = \ -I.. \ + -I../twoPhaseThermo \ + -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/transportModels \ -I$(LIB_SRC)/transportModels/incompressible/lnInclude \ -I$(LIB_SRC)/transportModels/interfaceProperties/lnInclude \ @@ -11,6 +13,9 @@ EXE_INC = \ -I$(LIB_SRC)/dynamicFvMesh/lnInclude EXE_LIBS = \ + -ltwoPhaseThermo \ + -lfluidThermophysicalModels \ + -lspecie \ -linterfaceProperties \ -ltwoPhaseInterfaceProperties \ -lincompressibleTransportModels \ diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C index acf563fc8e2d4e1591a93c184eab5f40b86ee96e..3cb787d144ef9369a5ded2416de6469ba43c3333 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterDyMFoam/compressibleInterDyMFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -43,7 +43,7 @@ Description #include "subCycle.H" #include "interfaceProperties.H" #include "twoPhaseMixture.H" -#include "phaseEquationOfState.H" +#include "twoPhaseThermo.H" #include "turbulenceModel.H" #include "pimpleControl.H" diff --git a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C index 54c246f203b5f5ed9083d192fa3d0013ee01af3a..85cab52cdb22999435645e3442e4afcaa2744fd8 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C +++ b/applications/solvers/multiphase/compressibleInterFoam/compressibleInterFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -38,9 +38,10 @@ Description #include "fvCFD.H" #include "MULES.H" #include "subCycle.H" +#include "rhoThermo.H" #include "interfaceProperties.H" #include "twoPhaseMixture.H" -#include "phaseEquationOfState.H" +#include "twoPhaseThermo.H" #include "turbulenceModel.H" #include "pimpleControl.H" diff --git a/applications/solvers/multiphase/compressibleInterFoam/createFields.H b/applications/solvers/multiphase/compressibleInterFoam/createFields.H index 1c22600170bc1a4dbfa189d0041c341ee6256e63..e31e4c34bf94f221be73b269e4f1641e74d6e065 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/createFields.H +++ b/applications/solvers/multiphase/compressibleInterFoam/createFields.H @@ -28,34 +28,6 @@ #include "createPhi.H" - Info<< "Reading field T\n" << endl; - volScalarField T - ( - IOobject - ( - "T", - runTime.timeName(), - mesh, - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - mesh - ); - - volScalarField p - ( - IOobject - ( - "p", - runTime.timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - p_rgh - ); - - Info<< "Reading transportProperties\n" << endl; twoPhaseMixture twoPhaseProperties(U, phi); @@ -69,91 +41,31 @@ scalar(1) - alpha1 ); - dimensionedScalar k1 - ( - "k", - dimensionSet(1, 1, -3, -1, 0), - twoPhaseProperties.subDict - ( - twoPhaseProperties.phase1Name() - ).lookup("k") - ); - - dimensionedScalar k2 - ( - "k", - dimensionSet(1, 1, -3, -1, 0), - twoPhaseProperties.subDict - ( - twoPhaseProperties.phase2Name() - ).lookup("k") - ); + Info<< "Reading thermophysical properties\n" << endl; - dimensionedScalar Cv1 - ( - "Cv", - dimensionSet(0, 2, -2, -1, 0), - twoPhaseProperties.subDict - ( - twoPhaseProperties.phase1Name() - ).lookup("Cv") - ); - - dimensionedScalar Cv2 - ( - "Cv", - dimensionSet(0, 2, -2, -1, 0), - twoPhaseProperties.subDict - ( - twoPhaseProperties.phase2Name() - ).lookup("Cv") - ); - - autoPtr<phaseEquationOfState> eos1 - ( - phaseEquationOfState::New - ( - twoPhaseProperties.subDict - ( - twoPhaseProperties.phase1Name() - ) - ) - ); + twoPhaseThermo thermo(mesh, alpha1, alpha2); - autoPtr<phaseEquationOfState> eos2 - ( - phaseEquationOfState::New - ( - twoPhaseProperties.subDict - ( - twoPhaseProperties.phase2Name() - ) - ) - ); + volScalarField& rho = thermo.rho(); + volScalarField& p = thermo.p(); + volScalarField& T = thermo.T(); + const volScalarField& rho1 = thermo.thermo1().rho(); + const volScalarField& psi1 = thermo.thermo1().psi(); + const volScalarField& rho2 = thermo.thermo2().rho(); + const volScalarField& psi2 = thermo.thermo2().psi(); - volScalarField psi1 - ( - IOobject - ( - "psi1", - runTime.timeName(), - mesh - ), - eos1->psi(p, T) - ); - psi1.oldTime(); + // volScalarField rho + // ( + // IOobject + // ( + // "rho", + // runTime.timeName(), + // mesh, + // IOobject::READ_IF_PRESENT, + // IOobject::AUTO_WRITE + // ), + // alpha1*rho1 + alpha2*rho2 + // ); - volScalarField psi2 - ( - IOobject - ( - "psi2", - runTime.timeName(), - mesh - ), - eos2->psi(p, T) - ); - psi2.oldTime(); dimensionedScalar pMin(twoPhaseProperties.lookup("pMin")); @@ -161,23 +73,6 @@ volScalarField gh("gh", g & mesh.C()); surfaceScalarField ghf("ghf", g & mesh.Cf()); - volScalarField rho1("rho1", eos1->rho(p, T)); - volScalarField rho2("rho2", eos2->rho(p, T)); - - volScalarField rho - ( - IOobject - ( - "rho", - runTime.timeName(), - mesh, - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - alpha1*rho1 + alpha2*rho2 - ); - - // Mass flux // Initialisation does not matter because rhoPhi is reset after the // alpha1 solution before it is used in the U equation. @@ -207,3 +102,19 @@ ( incompressible::turbulenceModel::New(U, phi, twoPhaseProperties) ); + + Info<< "Creating field dpdt\n" << endl; + volScalarField dpdt + ( + IOobject + ( + "dpdt", + runTime.timeName(), + mesh + ), + mesh, + dimensionedScalar("dpdt", p.dimensions()/dimTime, 0) + ); + + Info<< "Creating field kinetic energy K\n" << endl; + volScalarField K("K", 0.5*magSqr(U)); diff --git a/applications/solvers/multiphase/compressibleInterFoam/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C b/applications/solvers/multiphase/compressibleInterFoam/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C deleted file mode 100644 index e6782e8b3a9b1649a2053bea98af7becabbc51d1..0000000000000000000000000000000000000000 --- a/applications/solvers/multiphase/compressibleInterFoam/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C +++ /dev/null @@ -1,184 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2012 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -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 "wallHeatTransferFvPatchScalarField.H" -#include "addToRunTimeSelectionTable.H" -#include "fvPatchFieldMapper.H" -#include "volFields.H" - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::wallHeatTransferFvPatchScalarField::wallHeatTransferFvPatchScalarField -( - const fvPatch& p, - const DimensionedField<scalar, volMesh>& iF -) -: - mixedFvPatchScalarField(p, iF), - Tinf_(p.size(), 0.0), - alphaWall_(p.size(), 0.0) -{ - refValue() = 0.0; - refGrad() = 0.0; - valueFraction() = 0.0; -} - - -Foam::wallHeatTransferFvPatchScalarField::wallHeatTransferFvPatchScalarField -( - const wallHeatTransferFvPatchScalarField& ptf, - const fvPatch& p, - const DimensionedField<scalar, volMesh>& iF, - const fvPatchFieldMapper& mapper -) -: - mixedFvPatchScalarField(ptf, p, iF, mapper), - Tinf_(ptf.Tinf_, mapper), - alphaWall_(ptf.alphaWall_, mapper) -{} - - -Foam::wallHeatTransferFvPatchScalarField::wallHeatTransferFvPatchScalarField -( - const fvPatch& p, - const DimensionedField<scalar, volMesh>& iF, - const dictionary& dict -) -: - mixedFvPatchScalarField(p, iF), - Tinf_("Tinf", dict, p.size()), - alphaWall_("alphaWall", dict, p.size()) -{ - refValue() = Tinf_; - refGrad() = 0.0; - valueFraction() = 0.0; - - if (dict.found("value")) - { - fvPatchField<scalar>::operator= - ( - scalarField("value", dict, p.size()) - ); - } - else - { - evaluate(); - } -} - - -Foam::wallHeatTransferFvPatchScalarField::wallHeatTransferFvPatchScalarField -( - const wallHeatTransferFvPatchScalarField& tppsf -) -: - mixedFvPatchScalarField(tppsf), - Tinf_(tppsf.Tinf_), - alphaWall_(tppsf.alphaWall_) -{} - - -Foam::wallHeatTransferFvPatchScalarField::wallHeatTransferFvPatchScalarField -( - const wallHeatTransferFvPatchScalarField& tppsf, - const DimensionedField<scalar, volMesh>& iF -) -: - mixedFvPatchScalarField(tppsf, iF), - Tinf_(tppsf.Tinf_), - alphaWall_(tppsf.alphaWall_) -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -void Foam::wallHeatTransferFvPatchScalarField::autoMap -( - const fvPatchFieldMapper& m -) -{ - scalarField::autoMap(m); - Tinf_.autoMap(m); - alphaWall_.autoMap(m); -} - - -void Foam::wallHeatTransferFvPatchScalarField::rmap -( - const fvPatchScalarField& ptf, - const labelList& addr -) -{ - mixedFvPatchScalarField::rmap(ptf, addr); - - const wallHeatTransferFvPatchScalarField& tiptf = - refCast<const wallHeatTransferFvPatchScalarField>(ptf); - - Tinf_.rmap(tiptf.Tinf_, addr); - alphaWall_.rmap(tiptf.alphaWall_, addr); -} - - -void Foam::wallHeatTransferFvPatchScalarField::updateCoeffs() -{ - if (updated()) - { - return; - } - - const fvPatchScalarField& Cpw = - patch().lookupPatchField<volScalarField, scalar>("Cp"); - - const fvPatchScalarField& kByCpw = - patch().lookupPatchField<volScalarField, scalar>("kByCp"); - - valueFraction() = - 1.0/ - ( - 1.0 - + Cpw*kByCpw*patch().deltaCoeffs()/alphaWall_ - ); - - mixedFvPatchScalarField::updateCoeffs(); -} - - -void Foam::wallHeatTransferFvPatchScalarField::write(Ostream& os) const -{ - fvPatchScalarField::write(os); - Tinf_.writeEntry("Tinf", os); - alphaWall_.writeEntry("alphaWall", os); - writeEntry("value", os); -} - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - makePatchTypeField(fvPatchScalarField, wallHeatTransferFvPatchScalarField); -} - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/compressibleInterFoam/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H b/applications/solvers/multiphase/compressibleInterFoam/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H deleted file mode 100644 index cf5284a087d09fecd5df969ece76878f091ccd34..0000000000000000000000000000000000000000 --- a/applications/solvers/multiphase/compressibleInterFoam/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H +++ /dev/null @@ -1,194 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2012 OpenFOAM Foundation - \\/ M anipulation | -------------------------------------------------------------------------------- -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::wallHeatTransferFvPatchScalarField - -Description - Enthalpy boundary conditions for wall heat transfer - -SourceFiles - wallHeatTransferFvPatchScalarField.C - -\*---------------------------------------------------------------------------*/ - -#ifndef wallHeatTransferFvPatchScalarField_H -#define wallHeatTransferFvPatchScalarField_H - -#include "mixedFvPatchFields.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -/*---------------------------------------------------------------------------*\ - Class wallHeatTransferFvPatch Declaration -\*---------------------------------------------------------------------------*/ - -class wallHeatTransferFvPatchScalarField -: - public mixedFvPatchScalarField -{ - // Private data - - //- Tinf - scalarField Tinf_; - - //- alphaWall - scalarField alphaWall_; - - -public: - - //- Runtime type information - TypeName("wallHeatTransfer"); - - - // Constructors - - //- Construct from patch and internal field - wallHeatTransferFvPatchScalarField - ( - const fvPatch&, - const DimensionedField<scalar, volMesh>& - ); - - //- Construct from patch, internal field and dictionary - wallHeatTransferFvPatchScalarField - ( - const fvPatch&, - const DimensionedField<scalar, volMesh>&, - const dictionary& - ); - - //- Construct by mapping given wallHeatTransferFvPatchScalarField - // onto a new patch - wallHeatTransferFvPatchScalarField - ( - const wallHeatTransferFvPatchScalarField&, - const fvPatch&, - const DimensionedField<scalar, volMesh>&, - const fvPatchFieldMapper& - ); - - //- Construct as copy - wallHeatTransferFvPatchScalarField - ( - 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 - ( - const wallHeatTransferFvPatchScalarField&, - const DimensionedField<scalar, volMesh>& - ); - - //- Construct and return a clone setting internal field reference - virtual tmp<fvPatchScalarField> clone - ( - const DimensionedField<scalar, volMesh>& iF - ) const - { - return tmp<fvPatchScalarField> - ( - new wallHeatTransferFvPatchScalarField(*this, iF) - ); - } - - - // Member functions - - // Access - - //- Return Tinf - const scalarField& Tinf() const - { - return Tinf_; - } - - //- Return reference to Tinf to allow adjustment - scalarField& Tinf() - { - return Tinf_; - } - - //- Return alphaWall - const scalarField& alphaWall() const - { - return alphaWall_; - } - - //- Return reference to alphaWall to allow adjustment - scalarField& alphaWall() - { - return alphaWall_; - } - - - // Mapping functions - - //- Map (and resize as needed) from self given a mapping object - virtual void autoMap - ( - const fvPatchFieldMapper& - ); - - //- Reverse map the given fvPatchField onto this fvPatchField - virtual void rmap - ( - const fvPatchScalarField&, - const labelList& - ); - - - // Evaluation functions - - //- Update the coefficients associated with the patch field - virtual void updateCoeffs(); - - - //- Write - virtual void write(Ostream&) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/applications/solvers/multiphase/compressibleInterFoam/pEqn.H b/applications/solvers/multiphase/compressibleInterFoam/pEqn.H index 3197a72beeed1203b6248d6394e27dcdcf940269..dba9058f30bcf16faffe99c04c470285bf51c537 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/pEqn.H +++ b/applications/solvers/multiphase/compressibleInterFoam/pEqn.H @@ -1,7 +1,4 @@ { - rho1 = eos1->rho(p, T); - rho2 = eos2->rho(p, T); - volScalarField rAU("rAU", 1.0/UEqn.A()); surfaceScalarField rAUf("Dp", fvc::interpolate(rAU)); @@ -91,9 +88,15 @@ p = max(p_rgh + (alpha1*rho1 + alpha2*rho2)*gh, pMin); - rho1 = eos1->rho(p, T); - rho2 = eos2->rho(p, T); + // thermo.correct(); Info<< "max(U) " << max(mag(U)).value() << endl; Info<< "min(p_rgh) " << min(p_rgh).value() << endl; + + K = 0.5*magSqr(U); + + if (thermo.dpdt()) + { + dpdt = fvc::ddt(p); + } } diff --git a/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/Make/files b/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/Make/files new file mode 100644 index 0000000000000000000000000000000000000000..64771e2f6ea0a4eadf36fc495f8e38129e289a9b --- /dev/null +++ b/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/Make/files @@ -0,0 +1,3 @@ +twoPhaseThermo.C + +LIB = $(FOAM_LIBBIN)/libtwoPhaseThermo diff --git a/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/Make/options b/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/Make/options new file mode 100644 index 0000000000000000000000000000000000000000..eab8cce15dde3c729b68afecb9510af3bb5967e1 --- /dev/null +++ b/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/Make/options @@ -0,0 +1,8 @@ +EXE_INC = \ + -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ + -I$(LIB_SRC)/finiteVolume/lnInclude + +LIB_LIBS = \ + -lfluidThermophysicalModels \ + -lspecie \ + -lfiniteVolume diff --git a/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/twoPhaseThermo.C b/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/twoPhaseThermo.C new file mode 100644 index 0000000000000000000000000000000000000000..e600ee328892cb85e12ab35e79f9e1b6d78ffb3c --- /dev/null +++ b/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/twoPhaseThermo.C @@ -0,0 +1,365 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2013 OpenFOAM Foundation + \\/ M anipulation | +------------------------------------------------------------------------------- +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 "twoPhaseThermo.H" +#include "gradientEnergyFvPatchScalarField.H" +#include "mixedEnergyFvPatchScalarField.H" + + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ + defineTypeNameAndDebug(twoPhaseThermo, 0); +} + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::twoPhaseThermo::twoPhaseThermo +( + const fvMesh& mesh, + const volScalarField& alpha1, + const volScalarField& alpha2, + const word& phaseName +) +: + rhoThermo(mesh, phaseName), + phaseName1_("1"), + phaseName2_("2"), + alpha1_(alpha1), + alpha2_(alpha2), + thermo1_(rhoThermo::New(mesh, phaseName1_)), + thermo2_(rhoThermo::New(mesh, phaseName2_)), + he_ + ( + IOobject + ( + phasePropertyName + ( + "he" + ), + mesh.time().timeName(), + mesh, + IOobject::NO_READ, + IOobject::NO_WRITE + ), + mesh, + dimEnergy/dimMass, + heBoundaryTypes(), + heBoundaryBaseTypes() + ) +{ + thermo1_->validate("phaseModel 1", "e"); + thermo2_->validate("phaseModel 2", "e"); + + rho_ = alpha1_*thermo1_->rho() + alpha2_*thermo2_->rho(); + + he_ = + ( + alpha1_*thermo1_->rho()*thermo1_->he() + + alpha2_*thermo2_->rho()*thermo2_->he() + )/rho_; + + volScalarField::GeometricBoundaryField& hbf = he_.boundaryField(); + + forAll(hbf, patchi) + { + if (isA<gradientEnergyFvPatchScalarField>(hbf[patchi])) + { + refCast<gradientEnergyFvPatchScalarField>(hbf[patchi]).gradient() + = hbf[patchi].fvPatchField::snGrad(); + } + else if (isA<mixedEnergyFvPatchScalarField>(hbf[patchi])) + { + refCast<mixedEnergyFvPatchScalarField>(hbf[patchi]).refGrad() + = hbf[patchi].fvPatchField::snGrad(); + } + } + + correct(); +} + + +// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // + +Foam::twoPhaseThermo::~twoPhaseThermo() +{} + + +// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // + +void Foam::twoPhaseThermo::correct() +{ + thermo1_->he() = thermo1_->he(p_, T_); + thermo1_->correct(); + + thermo2_->he() = thermo2_->he(p_, T_); + thermo2_->correct(); + + psi_ = alpha1_*thermo1_->psi() + alpha2_*thermo2_->psi(); + mu_ = alpha1_*thermo1_->mu() + alpha2_*thermo2_->mu(); + alpha_ = alpha1_*thermo1_->alpha() + alpha2_*thermo2_->alpha(); +} + + +bool Foam::twoPhaseThermo::incompressible() const +{ + return thermo1_->incompressible() && thermo2_->incompressible(); +} + + +bool Foam::twoPhaseThermo::isochoric() const +{ + return thermo1_->isochoric() && thermo2_->isochoric(); +} + + +Foam::tmp<Foam::volScalarField> Foam::twoPhaseThermo::he +( + const volScalarField& p, + const volScalarField& T +) const +{ + return alpha1_*thermo1_->he(p, T) + alpha2_*thermo2_->he(p, T); +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::he +( + const scalarField& p, + const scalarField& T, + const labelList& cells +) const +{ + return + scalarField(alpha1_, cells)*thermo1_->he(p, T, cells) + + scalarField(alpha2_, cells)*thermo2_->he(p, T, cells); +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::he +( + const scalarField& p, + const scalarField& T, + const label patchi +) const +{ + return + alpha1_.boundaryField()[patchi]*thermo1_->he(p, T, patchi) + + alpha2_.boundaryField()[patchi]*thermo2_->he(p, T, patchi); +} + + +Foam::tmp<Foam::volScalarField> Foam::twoPhaseThermo::hc() const +{ + return alpha1_*thermo1_->hc() + alpha2_*thermo2_->hc(); +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::THE +( + const scalarField& h, + const scalarField& p, + const scalarField& T0, + const labelList& cells +) const +{ + notImplemented("Foam::twoPhaseThermo::THE"); + return T0; +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::THE +( + const scalarField& h, + const scalarField& p, + const scalarField& T0, + const label patchi +) const +{ + notImplemented("Foam::twoPhaseThermo::THE"); + return T0; +} + + +Foam::tmp<Foam::volScalarField> Foam::twoPhaseThermo::Cp() const +{ + return alpha1_*thermo1_->Cp() + alpha2_*thermo2_->Cp(); +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::Cp +( + const scalarField& p, + const scalarField& T, + const label patchi +) const +{ + return + alpha1_.boundaryField()[patchi]*thermo1_->Cp(p, T, patchi) + + alpha2_.boundaryField()[patchi]*thermo2_->Cp(p, T, patchi); +} + + +Foam::tmp<Foam::volScalarField> Foam::twoPhaseThermo::Cv() const +{ + return alpha1_*thermo1_->Cv() + alpha2_*thermo2_->Cv(); +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::Cv +( + const scalarField& p, + const scalarField& T, + const label patchi +) const +{ + return + alpha1_.boundaryField()[patchi]*thermo1_->Cv(p, T, patchi) + + alpha2_.boundaryField()[patchi]*thermo2_->Cv(p, T, patchi); +} + + +Foam::tmp<Foam::volScalarField> Foam::twoPhaseThermo::gamma() const +{ + return alpha1_*thermo1_->gamma() + alpha2_*thermo2_->gamma(); +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::gamma +( + const scalarField& p, + const scalarField& T, + const label patchi +) const +{ + return + alpha1_.boundaryField()[patchi]*thermo1_->gamma(p, T, patchi) + + alpha2_.boundaryField()[patchi]*thermo2_->gamma(p, T, patchi); +} + + +Foam::tmp<Foam::volScalarField> Foam::twoPhaseThermo::Cpv() const +{ + return alpha1_*thermo1_->Cpv() + alpha2_*thermo2_->Cpv(); +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::Cpv +( + const scalarField& p, + const scalarField& T, + const label patchi +) const +{ + return + alpha1_.boundaryField()[patchi]*thermo1_->Cpv(p, T, patchi) + + alpha2_.boundaryField()[patchi]*thermo2_->Cpv(p, T, patchi); +} + + +Foam::tmp<Foam::volScalarField> Foam::twoPhaseThermo::CpByCpv() const +{ + return alpha1_*thermo1_->CpByCpv() + alpha2_*thermo2_->CpByCpv(); +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::CpByCpv +( + const scalarField& p, + const scalarField& T, + const label patchi +) const +{ + return + alpha1_.boundaryField()[patchi]*thermo1_->CpByCpv(p, T, patchi) + + alpha2_.boundaryField()[patchi]*thermo2_->CpByCpv(p, T, patchi); +} + + +Foam::tmp<Foam::volScalarField> Foam::twoPhaseThermo::kappa() const +{ + return alpha1_*thermo1_->kappa() + alpha2_*thermo2_->kappa(); +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::kappa +( + const label patchi +) const +{ + return + alpha1_.boundaryField()[patchi]*thermo1_->kappa(patchi) + + alpha2_.boundaryField()[patchi]*thermo2_->kappa(patchi); +} + + +Foam::tmp<Foam::volScalarField> Foam::twoPhaseThermo::kappaEff +( + const volScalarField& alphat +) const +{ + return + alpha1_*thermo1_->kappaEff(alphat) + + alpha2_*thermo2_->kappaEff(alphat); +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::kappaEff +( + const scalarField& alphat, + const label patchi +) const +{ + return + alpha1_.boundaryField()[patchi]*thermo1_->kappaEff(alphat, patchi) + + alpha2_.boundaryField()[patchi]*thermo2_->kappaEff(alphat, patchi); +} + + +Foam::tmp<Foam::volScalarField> Foam::twoPhaseThermo::alphaEff +( + const volScalarField& alphat +) const +{ + return + alpha1_*thermo1_->alphaEff(alphat) + + alpha2_*thermo2_->alphaEff(alphat); +} + + +Foam::tmp<Foam::scalarField> Foam::twoPhaseThermo::alphaEff +( + const scalarField& alphat, + const label patchi +) const +{ + return + alpha1_.boundaryField()[patchi]*thermo1_->alphaEff(alphat, patchi) + + alpha2_.boundaryField()[patchi]*thermo2_->alphaEff(alphat, patchi); +} + + +// ************************************************************************* // diff --git a/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/twoPhaseThermo.H b/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/twoPhaseThermo.H new file mode 100644 index 0000000000000000000000000000000000000000..cfbada321b36206a2736abe7c789673c0e564ab3 --- /dev/null +++ b/applications/solvers/multiphase/compressibleInterFoam/twoPhaseThermo/twoPhaseThermo.H @@ -0,0 +1,290 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2013 OpenFOAM Foundation + \\/ M anipulation | +------------------------------------------------------------------------------- +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::twoPhaseThermo + +Description + +SourceFiles + twoPhaseThermoI.H + twoPhaseThermo.C + twoPhaseThermoIO.C + +\*---------------------------------------------------------------------------*/ + +#ifndef twoPhaseThermo_H +#define twoPhaseThermo_H + +#include "rhoThermo.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +/*---------------------------------------------------------------------------*\ + Class twoPhaseThermo Declaration +\*---------------------------------------------------------------------------*/ + +class twoPhaseThermo +: + public rhoThermo +{ + // Private data + + //- Name of phase 1 + word phaseName1_; + + //- Name of phase 2 + word phaseName2_; + + //- Phase-fraction of phase 1 + const volScalarField& alpha1_; + + //- Phase-fraction of phase2 + const volScalarField& alpha2_; + + //- Thermo-package of phase 1 + autoPtr<rhoThermo> thermo1_; + + //- Thermo-package of phase 2 + autoPtr<rhoThermo> thermo2_; + + //- Energy field + volScalarField he_; + + +public: + + //- Runtime type information + TypeName("twoPhaseThermo"); + + + // Constructors + + //- Construct from mesh and phase fractions + twoPhaseThermo + ( + const fvMesh&, + const volScalarField& alpha1, + const volScalarField& alpha2, + const word& phaseName=word::null + ); + + + //- Destructor + virtual ~twoPhaseThermo(); + + + // Member Functions + + const rhoThermo& thermo1() const + { + return thermo1_(); + } + + const rhoThermo& thermo2() const + { + return thermo2_(); + } + + //- Update properties + virtual void correct(); + + //- Return true if the equation of state is incompressible + // i.e. rho != f(p) + virtual bool incompressible() const; + + //- Return true if the equation of state is isochoric + // i.e. rho = const + virtual bool isochoric() const; + + + // Access to thermodynamic state variables + + //- Enthalpy/Internal energy [J/kg] + // Non-const access allowed for transport equations + virtual volScalarField& he() + { + return he_; + } + + //- Enthalpy/Internal energy [J/kg] + virtual const volScalarField& he() const + { + return he_; + } + + //- Enthalpy/Internal energy + // for given pressure and temperature [J/kg] + virtual tmp<volScalarField> he + ( + const volScalarField& p, + const volScalarField& T + ) const; + + //- Enthalpy/Internal energy for cell-set [J/kg] + virtual tmp<scalarField> he + ( + const scalarField& p, + const scalarField& T, + const labelList& cells + ) const; + + //- Enthalpy/Internal energy for patch [J/kg] + virtual tmp<scalarField> he + ( + const scalarField& p, + const scalarField& T, + const label patchi + ) const; + + //- Chemical enthalpy [J/kg] + virtual tmp<volScalarField> hc() const; + + //- Temperature from enthalpy/internal energy for cell-set + virtual tmp<scalarField> THE + ( + const scalarField& h, + const scalarField& p, + const scalarField& T0, // starting temperature + const labelList& cells + ) const; + + //- Temperature from enthalpy/internal energy for patch + virtual tmp<scalarField> THE + ( + const scalarField& h, + const scalarField& p, + const scalarField& T0, // starting temperature + const label patchi + ) const; + + + // Fields derived from thermodynamic state variables + + //- Heat capacity at constant pressure [J/kg/K] + virtual tmp<volScalarField> Cp() const; + + //- Heat capacity at constant pressure for patch [J/kg/K] + virtual tmp<scalarField> Cp + ( + const scalarField& p, + const scalarField& T, + const label patchi + ) const; + + //- Heat capacity at constant volume [J/kg/K] + virtual tmp<volScalarField> Cv() const; + + //- Heat capacity at constant volume for patch [J/kg/K] + virtual tmp<scalarField> Cv + ( + const scalarField& p, + const scalarField& T, + const label patchi + ) const; + + //- gamma = Cp/Cv [] + virtual tmp<volScalarField> gamma() const; + + //- gamma = Cp/Cv for patch [] + virtual tmp<scalarField> gamma + ( + const scalarField& p, + const scalarField& T, + const label patchi + ) const; + + //- Heat capacity at constant pressure/volume [J/kg/K] + virtual tmp<volScalarField> Cpv() const; + + //- Heat capacity at constant pressure/volume for patch [J/kg/K] + virtual tmp<scalarField> Cpv + ( + const scalarField& p, + const scalarField& T, + const label patchi + ) const; + + //- Heat capacity ratio [] + virtual tmp<volScalarField> CpByCpv() const; + + //- Heat capacity ratio for patch [] + virtual tmp<scalarField> CpByCpv + ( + const scalarField& p, + const scalarField& T, + const label patchi + ) const; + + + // Fields derived from transport state variables + + //- Thermal diffusivity for temperature of mixture [J/m/s/K] + virtual tmp<volScalarField> kappa() const; + + //- Thermal diffusivity of mixture for patch [J/m/s/K] + virtual tmp<scalarField> kappa + ( + const label patchi + ) const; + + //- Effective thermal diffusivity of mixture [J/m/s/K] + virtual tmp<volScalarField> kappaEff + ( + const volScalarField& alphat + ) const; + + //- Effective thermal diffusivity of mixture for patch [J/m/s/K] + virtual tmp<scalarField> kappaEff + ( + const scalarField& alphat, + const label patchi + ) const; + + //- Effective thermal diffusivity of mixture [J/m/s/K] + virtual tmp<volScalarField> alphaEff + ( + const volScalarField& alphat + ) const; + + //- Effective thermal diffusivity of mixture for patch [J/m/s/K] + virtual tmp<scalarField> alphaEff + ( + const scalarField& alphat, + const label patchi + ) const; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H b/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H index 7ff971ed7f7d36b31df61896e47146acdbdaeeca..817db5012c294263f4bf9bb2e14503b8584c4802 100644 --- a/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H +++ b/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H @@ -49,8 +49,6 @@ } } - #include "continuityErrs.H" - p == p_rgh + rho*gh; if (p_rgh.needReference()) diff --git a/src/regionModels/Allwclean b/src/regionModels/Allwclean index def3e82f78c4a4f0aff29439b32bd8a3b239b4b8..f95d816a531fc1f4a94727559b5cf7303cee193f 100755 --- a/src/regionModels/Allwclean +++ b/src/regionModels/Allwclean @@ -6,7 +6,7 @@ set -x wclean $makeType regionModel wclean $makeType pyrolysisModels wclean $makeType surfaceFilmModels -wclean $makeType thermoBaffleModels +wclean $makeType thermalBaffleModels wclean $makeType regionCoupling diff --git a/src/regionModels/Allwmake b/src/regionModels/Allwmake index 5c97cae02b1c15bd910e3547f6c7ae639b82d25e..0ca6e6338a93971b6d30465386179a1f088386e2 100755 --- a/src/regionModels/Allwmake +++ b/src/regionModels/Allwmake @@ -6,7 +6,7 @@ set -x wmake $makeType regionModel wmake $makeType pyrolysisModels wmake $makeType surfaceFilmModels -wmake $makeType thermoBaffleModels +wmake $makeType thermalBaffleModels wmake $makeType regionCoupling diff --git a/src/regionModels/regionModel/derivedFvPatches/mappedVariableThicknessWall/mappedVariableThicknessWallFvPatch.C b/src/regionModels/regionModel/derivedFvPatches/mappedVariableThicknessWall/mappedVariableThicknessWallFvPatch.C index 74a4416e2d35bbf7bd7e59871e93b704bfc01731..2bd7a7aebfd20dadf46ac1ec1ca3a5670f964bd7 100644 --- a/src/regionModels/regionModel/derivedFvPatches/mappedVariableThicknessWall/mappedVariableThicknessWallFvPatch.C +++ b/src/regionModels/regionModel/derivedFvPatches/mappedVariableThicknessWall/mappedVariableThicknessWallFvPatch.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -54,7 +54,7 @@ makeDeltaCoeffs(scalarField& dc) const const modelType& region1D = patch().boundaryMesh().mesh().time().lookupObject<modelType> ( - "thermoBaffleProperties" + "thermalBaffleProperties" ); dc = 2.0/(pp.thickness()/region1D.nLayers()); diff --git a/src/regionModels/thermalBaffleModels/Make/files b/src/regionModels/thermalBaffleModels/Make/files new file mode 100644 index 0000000000000000000000000000000000000000..dd0a6ebada305ee6d374dbbf8c08ec58e7d4d30c --- /dev/null +++ b/src/regionModels/thermalBaffleModels/Make/files @@ -0,0 +1,9 @@ +thermalBaffleModel/thermalBaffleModel.C +thermalBaffleModel/thermalBaffleModelNew.C +thermalBaffle/thermalBaffle.C +noThermo/noThermo.C + +derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.C + + +LIB = $(FOAM_LIBBIN)/libthermalBaffleModels diff --git a/src/regionModels/thermoBaffleModels/Make/options b/src/regionModels/thermalBaffleModels/Make/options similarity index 100% rename from src/regionModels/thermoBaffleModels/Make/options rename to src/regionModels/thermalBaffleModels/Make/options diff --git a/src/regionModels/thermoBaffleModels/derivedFvPatchFields/doc/thermoBaffleBoundaryConditionsDoc.H b/src/regionModels/thermalBaffleModels/derivedFvPatchFields/doc/thermalBaffleBoundaryConditionsDoc.H similarity index 94% rename from src/regionModels/thermoBaffleModels/derivedFvPatchFields/doc/thermoBaffleBoundaryConditionsDoc.H rename to src/regionModels/thermalBaffleModels/derivedFvPatchFields/doc/thermalBaffleBoundaryConditionsDoc.H index ac1553d10405d66a902a8e9100884f3fd28e8ac6..2c59b705bc88a33ffda54d0d2a415990041c9655 100644 --- a/src/regionModels/thermoBaffleModels/derivedFvPatchFields/doc/thermoBaffleBoundaryConditionsDoc.H +++ b/src/regionModels/thermalBaffleModels/derivedFvPatchFields/doc/thermalBaffleBoundaryConditionsDoc.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2012-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/src/regionModels/thermoBaffleModels/derivedFvPatchFields/thermoBaffle/thermoBaffleFvPatchScalarField.C b/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.C similarity index 84% rename from src/regionModels/thermoBaffleModels/derivedFvPatchFields/thermoBaffle/thermoBaffleFvPatchScalarField.C rename to src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.C index 471295924eb18851af009eac6e06e15685a64b9f..3d254324b67daed5ee71ff56b3258175552346e5 100644 --- a/src/regionModels/thermoBaffleModels/derivedFvPatchFields/thermoBaffle/thermoBaffleFvPatchScalarField.C +++ b/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -23,7 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "thermoBaffleFvPatchScalarField.H" +#include "thermalBaffleFvPatchScalarField.H" #include "addToRunTimeSelectionTable.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -35,8 +35,8 @@ namespace compressible // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -thermoBaffleFvPatchScalarField:: -thermoBaffleFvPatchScalarField +thermalBaffleFvPatchScalarField:: +thermalBaffleFvPatchScalarField ( const fvPatch& p, const DimensionedField<scalar, volMesh>& iF @@ -49,10 +49,10 @@ thermoBaffleFvPatchScalarField {} -thermoBaffleFvPatchScalarField:: -thermoBaffleFvPatchScalarField +thermalBaffleFvPatchScalarField:: +thermalBaffleFvPatchScalarField ( - const thermoBaffleFvPatchScalarField& ptf, + const thermalBaffleFvPatchScalarField& ptf, const fvPatch& p, const DimensionedField<scalar, volMesh>& iF, const fvPatchFieldMapper& mapper @@ -71,8 +71,8 @@ thermoBaffleFvPatchScalarField {} -thermoBaffleFvPatchScalarField:: -thermoBaffleFvPatchScalarField +thermalBaffleFvPatchScalarField:: +thermalBaffleFvPatchScalarField ( const fvPatch& p, const DimensionedField<scalar, volMesh>& iF, @@ -88,8 +88,8 @@ thermoBaffleFvPatchScalarField { FatalErrorIn ( - "thermoBaffleFvPatchScalarField::" - "thermoBaffleFvPatchScalarField\n" + "thermalBaffleFvPatchScalarField::" + "thermalBaffleFvPatchScalarField\n" "(\n" " const fvPatch& p,\n" " const DimensionedField<scalar, volMesh>& iF,\n" @@ -110,7 +110,7 @@ thermoBaffleFvPatchScalarField const fvMesh& thisMesh = patch().boundaryMesh().mesh(); - typedef regionModels::thermoBaffleModels::thermoBaffleModel baffle; + typedef regionModels::thermalBaffleModels::thermalBaffleModel baffle; if ( @@ -127,10 +127,10 @@ thermoBaffleFvPatchScalarField } -thermoBaffleFvPatchScalarField:: -thermoBaffleFvPatchScalarField +thermalBaffleFvPatchScalarField:: +thermalBaffleFvPatchScalarField ( - const thermoBaffleFvPatchScalarField& ptf, + const thermalBaffleFvPatchScalarField& ptf, const DimensionedField<scalar, volMesh>& iF ) : @@ -144,7 +144,7 @@ thermoBaffleFvPatchScalarField // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void thermoBaffleFvPatchScalarField::autoMap +void thermalBaffleFvPatchScalarField::autoMap ( const fvPatchFieldMapper& m ) @@ -153,7 +153,7 @@ void thermoBaffleFvPatchScalarField::autoMap } -void thermoBaffleFvPatchScalarField::rmap +void thermalBaffleFvPatchScalarField::rmap ( const fvPatchScalarField& ptf, const labelList& addr @@ -163,7 +163,7 @@ void thermoBaffleFvPatchScalarField::rmap } -void thermoBaffleFvPatchScalarField::updateCoeffs() +void thermalBaffleFvPatchScalarField::updateCoeffs() { if (this->updated()) { @@ -181,7 +181,7 @@ void thermoBaffleFvPatchScalarField::updateCoeffs() } -void thermoBaffleFvPatchScalarField::write(Ostream& os) const +void thermalBaffleFvPatchScalarField::write(Ostream& os) const { turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::write(os); @@ -189,9 +189,9 @@ void thermoBaffleFvPatchScalarField::write(Ostream& os) const if (thisMesh.name() == polyMesh::defaultRegion && owner_) { - word thermoModel = dict_.lookup("thermoBaffleModel"); + word thermoModel = dict_.lookup("thermalBaffleModel"); - os.writeKeyword("thermoBaffleModel") + os.writeKeyword("thermalBaffleModel") << thermoModel << token::END_STATEMENT << nl; @@ -227,7 +227,7 @@ void thermoBaffleFvPatchScalarField::write(Ostream& os) const makePatchTypeField ( fvPatchScalarField, - thermoBaffleFvPatchScalarField + thermalBaffleFvPatchScalarField ); diff --git a/src/regionModels/thermoBaffleModels/derivedFvPatchFields/thermoBaffle/thermoBaffleFvPatchScalarField.H b/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.H similarity index 84% rename from src/regionModels/thermoBaffleModels/derivedFvPatchFields/thermoBaffle/thermoBaffleFvPatchScalarField.H rename to src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.H index a3fa62d442f90db9273606c051a316de2431ac1b..4097f055648b0774ab889a1971bb8388398462e7 100644 --- a/src/regionModels/thermoBaffleModels/derivedFvPatchFields/thermoBaffle/thermoBaffleFvPatchScalarField.H +++ b/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -22,7 +22,7 @@ License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. Class - Foam::thermoBaffleFvPatchScalarField + Foam::thermalBaffleFvPatchScalarField Group grpThermoBoundaryConditions @@ -56,11 +56,11 @@ Description // Thermo baffle model - thermoBaffleModel thermoBaffle; + thermalBaffleModel thermalBaffle; regionName baffleRegion; infoOutput yes; active yes; - thermoBaffleCoeffs + thermalBaffleCoeffs { } @@ -112,20 +112,20 @@ Description SeeAlso Foam::turbulentTemperatureCoupledBaffleMixedFvPatchScalarField - Foam::regionModels::thermoBaffleModels::thermoBaffleModel + Foam::regionModels::thermalBaffleModels::thermalBaffleModel SourceFiles - thermoBaffleFvPatchScalarField.C + thermalBaffleFvPatchScalarField.C \*---------------------------------------------------------------------------*/ -#ifndef thermoBaffleFvPatchScalarField_H -#define thermoBaffleFvPatchScalarField_H +#ifndef thermalBaffleFvPatchScalarField_H +#define thermalBaffleFvPatchScalarField_H #include "autoPtr.H" #include "regionModel.H" -#include "thermoBaffleModel.H" +#include "thermalBaffleModel.H" #include "turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -137,10 +137,10 @@ namespace compressible { /*---------------------------------------------------------------------------*\ - Class thermoBaffleFvPatchScalarField Declaration + Class thermalBaffleFvPatchScalarField Declaration \*---------------------------------------------------------------------------*/ -class thermoBaffleFvPatchScalarField +class thermalBaffleFvPatchScalarField : public turbulentTemperatureCoupledBaffleMixedFvPatchScalarField { @@ -150,7 +150,7 @@ class thermoBaffleFvPatchScalarField bool owner_; //- Thermal baffle - autoPtr<regionModels::thermoBaffleModels::thermoBaffleModel> baffle_; + autoPtr<regionModels::thermalBaffleModels::thermalBaffleModel> baffle_; //- Dictionary dictionary dict_; @@ -159,20 +159,20 @@ class thermoBaffleFvPatchScalarField public: //- Runtime type information - TypeName("compressible::thermoBaffle"); + TypeName("compressible::thermalBaffle"); // Constructors //- Construct from patch and internal field - thermoBaffleFvPatchScalarField + thermalBaffleFvPatchScalarField ( const fvPatch&, const DimensionedField<scalar, volMesh>& ); //- Construct from patch, internal field and dictionary - thermoBaffleFvPatchScalarField + thermalBaffleFvPatchScalarField ( const fvPatch&, const DimensionedField<scalar, volMesh>&, @@ -180,10 +180,10 @@ public: ); //- Construct by mapping given - // thermoBaffleFvPatchScalarField onto a new patch - thermoBaffleFvPatchScalarField + // thermalBaffleFvPatchScalarField onto a new patch + thermalBaffleFvPatchScalarField ( - const thermoBaffleFvPatchScalarField&, + const thermalBaffleFvPatchScalarField&, const fvPatch&, const DimensionedField<scalar, volMesh>&, const fvPatchFieldMapper& @@ -195,14 +195,14 @@ public: { return tmp<fvPatchScalarField> ( - new thermoBaffleFvPatchScalarField(*this) + new thermalBaffleFvPatchScalarField(*this) ); } //- Construct as copy setting internal field reference - thermoBaffleFvPatchScalarField + thermalBaffleFvPatchScalarField ( - const thermoBaffleFvPatchScalarField&, + const thermalBaffleFvPatchScalarField&, const DimensionedField<scalar, volMesh>& ); @@ -214,7 +214,7 @@ public: { return tmp<fvPatchScalarField> ( - new thermoBaffleFvPatchScalarField(*this, iF) + new thermalBaffleFvPatchScalarField(*this, iF) ); } diff --git a/src/regionModels/thermoBaffleModels/noThermo/noThermo.C b/src/regionModels/thermalBaffleModels/noThermo/noThermo.C similarity index 92% rename from src/regionModels/thermoBaffleModels/noThermo/noThermo.C rename to src/regionModels/thermalBaffleModels/noThermo/noThermo.C index 1175a0d792a605019bfefd4a612d29020a4c94dc..e0511f226ac6870abfae57186b3f5df21599a926 100644 --- a/src/regionModels/thermoBaffleModels/noThermo/noThermo.C +++ b/src/regionModels/thermalBaffleModels/noThermo/noThermo.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -33,15 +33,15 @@ namespace Foam { namespace regionModels { -namespace thermoBaffleModels +namespace thermalBaffleModels { // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // defineTypeNameAndDebug(noThermo, 0); -addToRunTimeSelectionTable(thermoBaffleModel, noThermo, mesh); -addToRunTimeSelectionTable(thermoBaffleModel, noThermo, dictionary); +addToRunTimeSelectionTable(thermalBaffleModel, noThermo, mesh); +addToRunTimeSelectionTable(thermalBaffleModel, noThermo, dictionary); // * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // @@ -55,7 +55,7 @@ bool noThermo::read() noThermo::noThermo(const word& modelType, const fvMesh& mesh) : - thermoBaffleModel(mesh) + thermalBaffleModel(mesh) {} @@ -66,7 +66,7 @@ noThermo::noThermo const dictionary& dict ) : - thermoBaffleModel(modelType, mesh, dict) + thermalBaffleModel(modelType, mesh, dict) {} @@ -157,7 +157,7 @@ const solidThermo& noThermo::thermo() const // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -} // End namespace thermoBaffleModels +} // End namespace thermalBaffleModels } // End namespace regionModels } // End namespace Foam diff --git a/src/regionModels/thermoBaffleModels/noThermo/noThermo.H b/src/regionModels/thermalBaffleModels/noThermo/noThermo.H similarity index 94% rename from src/regionModels/thermoBaffleModels/noThermo/noThermo.H rename to src/regionModels/thermalBaffleModels/noThermo/noThermo.H index 8144dad5863076d2b8b29fcc828ee11baab17c1e..9fed26466a7489dd383411f2ba44603d766d9542 100644 --- a/src/regionModels/thermoBaffleModels/noThermo/noThermo.H +++ b/src/regionModels/thermalBaffleModels/noThermo/noThermo.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -35,7 +35,7 @@ SourceFiles #ifndef noThermo_H #define noThermo_H -#include "thermoBaffleModel.H" +#include "thermalBaffleModel.H" #include "volFieldsFwd.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -44,7 +44,7 @@ namespace Foam { namespace regionModels { -namespace thermoBaffleModels +namespace thermalBaffleModels { /*---------------------------------------------------------------------------*\ @@ -53,7 +53,7 @@ namespace thermoBaffleModels class noThermo : - public thermoBaffleModel + public thermalBaffleModel { private: @@ -139,7 +139,7 @@ public: // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -} // End namespace thermoBaffleModels +} // End namespace thermalBaffleModels } // End namespace regionModels } // End namespace Foam diff --git a/src/regionModels/thermoBaffleModels/thermoBaffle/thermoBaffle.C b/src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffle.C similarity index 86% rename from src/regionModels/thermoBaffleModels/thermoBaffle/thermoBaffle.C rename to src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffle.C index 9044f71fa2090ba757e65ded440ebad24a2f27a4..b6b53b69f29082492492be33b7232719e1e6b985 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffle/thermoBaffle.C +++ b/src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffle.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "thermoBaffle.H" +#include "thermalBaffle.H" #include "fvm.H" #include "fvcDiv.H" @@ -39,37 +39,37 @@ namespace Foam { namespace regionModels { -namespace thermoBaffleModels +namespace thermalBaffleModels { // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // -defineTypeNameAndDebug(thermoBaffle, 0); +defineTypeNameAndDebug(thermalBaffle, 0); -addToRunTimeSelectionTable(thermoBaffleModel, thermoBaffle, mesh); -addToRunTimeSelectionTable(thermoBaffleModel, thermoBaffle, dictionary); +addToRunTimeSelectionTable(thermalBaffleModel, thermalBaffle, mesh); +addToRunTimeSelectionTable(thermalBaffleModel, thermalBaffle, dictionary); // * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // -bool thermoBaffle::read() +bool thermalBaffle::read() { this->solution().lookup("nNonOrthCorr") >> nNonOrthCorr_; return regionModel1D::read(); } -bool thermoBaffle::read(const dictionary& dict) +bool thermalBaffle::read(const dictionary& dict) { this->solution().lookup("nNonOrthCorr") >> nNonOrthCorr_; return regionModel1D::read(dict); } -void thermoBaffle::solveEnergy() +void thermalBaffle::solveEnergy() { if (debug) { - Info<< "thermoBaffle::solveEnergy()" << endl; + Info<< "thermalBaffle::solveEnergy()" << endl; } const polyBoundaryMesh& rbm = regionMesh().boundaryMesh(); @@ -157,14 +157,14 @@ void thermoBaffle::solveEnergy() // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -thermoBaffle::thermoBaffle +thermalBaffle::thermalBaffle ( const word& modelType, const fvMesh& mesh, const dictionary& dict ) : - thermoBaffleModel(modelType, mesh, dict), + thermalBaffleModel(modelType, mesh, dict), nNonOrthCorr_(readLabel(solution().lookup("nNonOrthCorr"))), thermo_(solidThermo::New(regionMesh(), dict)), h_(thermo_->he()), @@ -218,13 +218,13 @@ thermoBaffle::thermoBaffle } -thermoBaffle::thermoBaffle +thermalBaffle::thermalBaffle ( const word& modelType, const fvMesh& mesh ) : - thermoBaffleModel(modelType, mesh), + thermalBaffleModel(modelType, mesh), nNonOrthCorr_(readLabel(solution().lookup("nNonOrthCorr"))), thermo_(solidThermo::New(regionMesh())), h_(thermo_->he()), @@ -279,13 +279,13 @@ thermoBaffle::thermoBaffle // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // -thermoBaffle::~thermoBaffle() +thermalBaffle::~thermalBaffle() {} // * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // -void thermoBaffle::init() +void thermalBaffle::init() { if (oneD_ && !constantThickness_) { @@ -294,7 +294,7 @@ void thermoBaffle::init() if (Qsb!= thickness_.size()) { - FatalErrorIn("thermoBaffle::init()") + FatalErrorIn("thermalBaffle::init()") << "the boundary field of Qs is " << Qsb << " and " << nl << "the field 'thickness' is " << thickness_.size() << nl @@ -304,11 +304,11 @@ void thermoBaffle::init() } -void thermoBaffle::preEvolveRegion() +void thermalBaffle::preEvolveRegion() {} -void thermoBaffle::evolveRegion() +void thermalBaffle::evolveRegion() { for (int nonOrth=0; nonOrth<=nNonOrthCorr_; nonOrth++) { @@ -317,43 +317,43 @@ void thermoBaffle::evolveRegion() } -const tmp<volScalarField> thermoBaffle::Cp() const +const tmp<volScalarField> thermalBaffle::Cp() const { return thermo_->Cp(); } -const volScalarField& thermoBaffle::kappaRad() const +const volScalarField& thermalBaffle::kappaRad() const { return radiation_->absorptionEmission().a(); } -const volScalarField& thermoBaffle::rho() const +const volScalarField& thermalBaffle::rho() const { return thermo_->rho(); } -const volScalarField& thermoBaffle::kappa() const +const volScalarField& thermalBaffle::kappa() const { return thermo_->kappa(); } -const volScalarField& thermoBaffle::T() const +const volScalarField& thermalBaffle::T() const { return thermo_->T(); } -const solidThermo& thermoBaffle::thermo() const +const solidThermo& thermalBaffle::thermo() const { return thermo_; } -void thermoBaffle::info() const +void thermalBaffle::info() const { const labelList& coupledPatches = intCoupledPatchIDs(); @@ -375,7 +375,7 @@ void thermoBaffle::info() const // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -} // end namespace thermoBaffleModels +} // end namespace thermalBaffleModels } // end namespace regionModels } // end namespace Foam diff --git a/src/regionModels/thermoBaffleModels/thermoBaffle/thermoBaffle.H b/src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffle.H similarity index 87% rename from src/regionModels/thermoBaffleModels/thermoBaffle/thermoBaffle.H rename to src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffle.H index 93fcf19fd605ec3f8ee822e76f4ce8a99de7eaa7..b8265948a98e0b4d77f4140b4d2ce64396b0376c 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffle/thermoBaffle.H +++ b/src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffle.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -22,21 +22,21 @@ License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. Class - Foam::thermoBaffle + Foam::thermalBaffle Description 2D thermal baffle SourceFiles - thermoBaffle.C - thermoBaffleI.H + thermalBaffle.C + thermalBaffleI.H \*---------------------------------------------------------------------------*/ -#ifndef thermoBaffle_H -#define thermoBaffle_H +#ifndef thermalBaffle_H +#define thermalBaffle_H -#include "thermoBaffleModel.H" +#include "thermalBaffleModel.H" #include "volFieldsFwd.H" @@ -46,29 +46,29 @@ namespace Foam { namespace regionModels { -namespace thermoBaffleModels +namespace thermalBaffleModels { /*---------------------------------------------------------------------------*\ - Class thermoBaffle Declaration + Class thermalBaffle Declaration \*---------------------------------------------------------------------------*/ -class thermoBaffle +class thermalBaffle : - public thermoBaffleModel + public thermalBaffleModel { private: // Private member functions //- Disallow default bitwise copy construct - thermoBaffle(const thermoBaffle&); + thermalBaffle(const thermalBaffle&); //- Disallow default bitwise assignment - void operator=(const thermoBaffle&); + void operator=(const thermalBaffle&); - //- Initialize thermoBaffle + //- Initialize thermalBaffle void init(); @@ -124,16 +124,16 @@ protected: public: //- Runtime type information - TypeName("thermoBaffle"); + TypeName("thermalBaffle"); // Constructors //- Construct from components - thermoBaffle(const word& modelType, const fvMesh& mesh); + thermalBaffle(const word& modelType, const fvMesh& mesh); //- Construct from components and dict - thermoBaffle + thermalBaffle ( const word& modelType, const fvMesh& mesh, @@ -142,7 +142,7 @@ public: //- Destructor - virtual ~thermoBaffle(); + virtual ~thermalBaffle(); // Member Functions @@ -205,13 +205,13 @@ public: // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -} // End namespace thermoBaffleModels +} // End namespace thermalBaffleModels } // End namespace regionModels } // End namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "thermoBaffleI.H" +#include "thermalBaffleI.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionModels/thermoBaffleModels/thermoBaffle/thermoBaffleI.H b/src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffleI.H similarity index 87% rename from src/regionModels/thermoBaffleModels/thermoBaffle/thermoBaffleI.H rename to src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffleI.H index 107274f65e87a0b577bfd81c1c744312afa07b42..afad57dea79f59a491339a776f94af82f96b47e4 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffle/thermoBaffleI.H +++ b/src/regionModels/thermalBaffleModels/thermalBaffle/thermalBaffleI.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -24,7 +24,7 @@ License \*---------------------------------------------------------------------------*/ -#include "thermoBaffle.H" +#include "thermalBaffle.H" #include "zeroGradientFvPatchFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -33,12 +33,12 @@ namespace Foam { namespace regionModels { -namespace thermoBaffleModels +namespace thermalBaffleModels { // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -inline tmp<scalarField> thermoBaffle::he +inline tmp<scalarField> thermalBaffle::he ( const scalarField& p, const scalarField& T, @@ -49,7 +49,7 @@ inline tmp<scalarField> thermoBaffle::he } -inline tmp<volScalarField> thermoBaffle::he() const +inline tmp<volScalarField> thermalBaffle::he() const { return thermo_->he(); } @@ -57,7 +57,7 @@ inline tmp<volScalarField> thermoBaffle::he() const // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -} // End namespace thermoBaffleModels +} // End namespace thermalBaffleModels } // End namespace regionModels } // End namespace Foam diff --git a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.C b/src/regionModels/thermalBaffleModels/thermalBaffleModel/thermalBaffleModel.C similarity index 85% rename from src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.C rename to src/regionModels/thermalBaffleModels/thermalBaffleModel/thermalBaffleModel.C index ff38797a145d4dd9971f1fb12bb4d3c73f1f8ef8..543ea6b9741152422102c0543523c4ecb4a04f23 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.C +++ b/src/regionModels/thermalBaffleModels/thermalBaffleModel/thermalBaffleModel.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -23,7 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "thermoBaffleModel.H" +#include "thermalBaffleModel.H" #include "fvMesh.H" #include "mappedVariableThicknessWallPolyPatch.H" #include "wedgePolyPatch.H" @@ -34,33 +34,33 @@ namespace Foam { namespace regionModels { -namespace thermoBaffleModels +namespace thermalBaffleModels { // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // -defineTypeNameAndDebug(thermoBaffleModel, 0); -defineRunTimeSelectionTable(thermoBaffleModel, mesh); -defineRunTimeSelectionTable(thermoBaffleModel, dictionary); +defineTypeNameAndDebug(thermalBaffleModel, 0); +defineRunTimeSelectionTable(thermalBaffleModel, mesh); +defineRunTimeSelectionTable(thermalBaffleModel, dictionary); // * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // -bool thermoBaffleModel::read() +bool thermalBaffleModel::read() { regionModel1D::read(); return true; } -bool thermoBaffleModel::read(const dictionary& dict) +bool thermalBaffleModel::read(const dictionary& dict) { regionModel1D::read(dict); return true; } -void thermoBaffleModel::init() +void thermalBaffleModel::init() { if (active_) { @@ -116,7 +116,7 @@ void thermoBaffleModel::init() { FatalErrorIn ( - "thermoBaffleModel::thermoBaffleModel" + "thermalBaffleModel::thermalBaffleModel" "(" " const word&," " const fvMesh&" @@ -133,7 +133,7 @@ void thermoBaffleModel::init() { FatalErrorIn ( - "thermoBaffleModel::thermoBaffleModel" + "thermalBaffleModel::thermalBaffleModel" "(" " const word&," " const fvMesh&" @@ -164,12 +164,12 @@ void thermoBaffleModel::init() { FatalErrorIn ( - "thermoBaffleModel::thermoBaffleModel" + "thermalBaffleModel::thermalBaffleModel" "(" " const word&," " const fvMesh&" ")" - ) << " coupled patches in thermoBaffle are " << nl + ) << " coupled patches in thermalBaffle are " << nl << " different sizes from list thickness" << nl << exit(FatalError); } @@ -199,7 +199,7 @@ void thermoBaffleModel::init() // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -thermoBaffleModel::thermoBaffleModel(const fvMesh& mesh) +thermalBaffleModel::thermalBaffleModel(const fvMesh& mesh) : regionModel1D(mesh), thickness_(), @@ -209,7 +209,7 @@ thermoBaffleModel::thermoBaffleModel(const fvMesh& mesh) {} -thermoBaffleModel::thermoBaffleModel +thermalBaffleModel::thermalBaffleModel ( const word& modelType, const fvMesh& mesh, @@ -217,7 +217,7 @@ thermoBaffleModel::thermoBaffleModel ) : - regionModel1D(mesh, "thermoBaffle", modelType, dict, true), + regionModel1D(mesh, "thermalBaffle", modelType, dict, true), thickness_(), delta_("delta", dimLength, 0.0), oneD_(false), @@ -227,9 +227,13 @@ thermoBaffleModel::thermoBaffleModel } -thermoBaffleModel::thermoBaffleModel(const word& modelType, const fvMesh& mesh) +thermalBaffleModel::thermalBaffleModel +( + const word& modelType, + const fvMesh& mesh +) : - regionModel1D(mesh, "thermoBaffle", modelType), + regionModel1D(mesh, "thermalBaffle", modelType), thickness_(), delta_("delta", dimLength, 0.0), oneD_(false), @@ -241,19 +245,19 @@ thermoBaffleModel::thermoBaffleModel(const word& modelType, const fvMesh& mesh) // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // -thermoBaffleModel::~thermoBaffleModel() +thermalBaffleModel::~thermalBaffleModel() {} // * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // -void thermoBaffleModel::preEvolveRegion() +void thermalBaffleModel::preEvolveRegion() {} // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -} // End namespace thermoBaffleModels +} // End namespace thermalBaffleModels } // End namespace regionModels } // End namespace Foam diff --git a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.H b/src/regionModels/thermalBaffleModels/thermalBaffleModel/thermalBaffleModel.H similarity index 86% rename from src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.H rename to src/regionModels/thermalBaffleModels/thermalBaffleModel/thermalBaffleModel.H index d55d6c5ee9c4309c41b81341e3e7562b054d3222..01c3cbe5595fa8644b8cafc53193160e911cd72c 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModel.H +++ b/src/regionModels/thermalBaffleModels/thermalBaffleModel/thermalBaffleModel.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -22,17 +22,17 @@ License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. Class - Foam::thermoBaffleModel + Foam::thermalBaffleModel Description SourceFiles - thermoBaffleModel.C + thermalBaffleModel.C \*---------------------------------------------------------------------------*/ -#ifndef thermoBaffleModel_H -#define thermoBaffleModel_H +#ifndef thermalBaffleModel_H +#define thermalBaffleModel_H #include "runTimeSelectionTables.H" #include "scalarIOField.H" @@ -49,14 +49,14 @@ namespace Foam { namespace regionModels { -namespace thermoBaffleModels +namespace thermalBaffleModels { /*---------------------------------------------------------------------------*\ - Class thermoBaffleModel Declaration + Class thermalBaffleModel Declaration \*---------------------------------------------------------------------------*/ -class thermoBaffleModel +class thermalBaffleModel : public regionModel1D { @@ -65,10 +65,10 @@ private: // Private Member Functions //- Disallow default bitwise copy construct - thermoBaffleModel(const thermoBaffleModel&); + thermalBaffleModel(const thermalBaffleModel&); //- Disallow default bitwise assignment - void operator=(const thermoBaffleModel&); + void operator=(const thermalBaffleModel&); //- Initialize thermal Baffle void init(); @@ -103,7 +103,7 @@ protected: public: //- Runtime type information - TypeName("thermoBaffleModel"); + TypeName("thermalBaffleModel"); // Declare runtime constructor selection tables @@ -111,7 +111,7 @@ public: declareRunTimeSelectionTable ( autoPtr, - thermoBaffleModel, + thermalBaffleModel, mesh, ( const word& modelType, @@ -123,7 +123,7 @@ public: declareRunTimeSelectionTable ( autoPtr, - thermoBaffleModel, + thermalBaffleModel, dictionary, ( const word& modelType, @@ -137,13 +137,13 @@ public: // Constructors //- Construct null from mesh - thermoBaffleModel(const fvMesh& mesh); + thermalBaffleModel(const fvMesh& mesh); //- Construct from type name and mesh - thermoBaffleModel(const word& modelType, const fvMesh& mesh); + thermalBaffleModel(const word& modelType, const fvMesh& mesh); //- Construct from type name and mesh and dict - thermoBaffleModel + thermalBaffleModel ( const word& modelType, const fvMesh& mesh, @@ -154,10 +154,10 @@ public: // Selectors //- Return a reference to the selected model - static autoPtr<thermoBaffleModel> New(const fvMesh& mesh); + static autoPtr<thermalBaffleModel> New(const fvMesh& mesh); //- Return a reference to the selected model using dictionary - static autoPtr<thermoBaffleModel> New + static autoPtr<thermalBaffleModel> New ( const fvMesh& mesh, const dictionary& dict @@ -165,7 +165,7 @@ public: //- Destructor - virtual ~thermoBaffleModel(); + virtual ~thermalBaffleModel(); // Member Functions @@ -227,7 +227,7 @@ public: // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -} // End namespace thermoBaffleModels +} // End namespace thermalBaffleModels } // End namespace regionModels } // End namespace Foam diff --git a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModelNew.C b/src/regionModels/thermalBaffleModels/thermalBaffleModel/thermalBaffleModelNew.C similarity index 70% rename from src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModelNew.C rename to src/regionModels/thermalBaffleModels/thermalBaffleModel/thermalBaffleModelNew.C index 4261b9f48f7c8da97885b3091e1eb155b2d83ca2..44ae867df78d459f30772ed1cff746b3aa7ca9a1 100644 --- a/src/regionModels/thermoBaffleModels/thermoBaffleModel/thermoBaffleModelNew.C +++ b/src/regionModels/thermalBaffleModels/thermalBaffleModel/thermalBaffleModelNew.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -23,7 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "thermoBaffleModel.H" +#include "thermalBaffleModel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -31,20 +31,20 @@ namespace Foam { namespace regionModels { -namespace thermoBaffleModels +namespace thermalBaffleModels { // * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * // -autoPtr<thermoBaffleModel> thermoBaffleModel::New(const fvMesh& mesh) +autoPtr<thermalBaffleModel> thermalBaffleModel::New(const fvMesh& mesh) { word modelType; { - IOdictionary thermoBafflePropertiesDict + IOdictionary thermalBafflePropertiesDict ( IOobject ( - "thermoBaffleProperties", + "thermalBaffleProperties", mesh.time().constant(), mesh, IOobject::MUST_READ_IF_MODIFIED, @@ -53,7 +53,7 @@ autoPtr<thermoBaffleModel> thermoBaffleModel::New(const fvMesh& mesh) ) ); - thermoBafflePropertiesDict.lookup("thermoBaffleModel") >> modelType; + thermalBafflePropertiesDict.lookup("thermalBaffleModel") >> modelType; } Info<< "Selecting baffle model " << modelType << endl; @@ -64,25 +64,25 @@ autoPtr<thermoBaffleModel> thermoBaffleModel::New(const fvMesh& mesh) if (cstrIter == meshConstructorTablePtr_->end()) { - FatalErrorIn("thermoBaffleModel::New(const fvMesh&)") - << "Unknown thermoBaffleModel type " << modelType + FatalErrorIn("thermalBaffleModel::New(const fvMesh&)") + << "Unknown thermalBaffleModel type " << modelType << nl << nl - << "Valid thermoBaffleModel types are:" << nl + << "Valid thermalBaffleModel types are:" << nl << meshConstructorTablePtr_->sortedToc() << exit(FatalError); } - return autoPtr<thermoBaffleModel>(cstrIter()(modelType, mesh)); + return autoPtr<thermalBaffleModel>(cstrIter()(modelType, mesh)); } -autoPtr<thermoBaffleModel> thermoBaffleModel::New +autoPtr<thermalBaffleModel> thermalBaffleModel::New ( const fvMesh& mesh, const dictionary& dict ) { - word modelType = dict.lookup("thermoBaffleModel"); + word modelType = dict.lookup("thermalBaffleModel"); Info<< "Selecting baffle model " << modelType << endl; @@ -92,21 +92,23 @@ autoPtr<thermoBaffleModel> thermoBaffleModel::New if (cstrIter == dictionaryConstructorTablePtr_->end()) { - FatalErrorIn("thermoBaffleModel::New(const fvMesh&, const dictionary&)") - << "Unknown thermoBaffleModel type " << modelType + FatalErrorIn + ( + "thermalBaffleModel::New(const fvMesh&, const dictionary&)" + ) << "Unknown thermalBaffleModel type " << modelType << nl << nl - << "Valid thermoBaffleModel types are:" << nl + << "Valid thermalBaffleModel types are:" << nl << dictionaryConstructorTablePtr_->sortedToc() << exit(FatalError); } - return autoPtr<thermoBaffleModel>(cstrIter()(modelType, mesh, dict)); + return autoPtr<thermalBaffleModel>(cstrIter()(modelType, mesh, dict)); } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -} // End namespace thermoBaffleModels +} // End namespace thermalBaffleModels } // End namespace regionModels } // End namespace Foam diff --git a/src/regionModels/thermoBaffleModels/Make/files b/src/regionModels/thermoBaffleModels/Make/files deleted file mode 100644 index 2799f6460bebca2c19b0e967648f10a6f5985396..0000000000000000000000000000000000000000 --- a/src/regionModels/thermoBaffleModels/Make/files +++ /dev/null @@ -1,9 +0,0 @@ -thermoBaffleModel/thermoBaffleModel.C -thermoBaffleModel/thermoBaffleModelNew.C -thermoBaffle/thermoBaffle.C -noThermo/noThermo.C - -derivedFvPatchFields/thermoBaffle/thermoBaffleFvPatchScalarField.C - - -LIB = $(FOAM_LIBBIN)/libthermoBaffleModels diff --git a/src/thermophysicalModels/basic/Make/files b/src/thermophysicalModels/basic/Make/files index 5b82c8047663caef5f554a77857d9bb9e6436790..7d10c1c952aa1d0100331a8832804f0decbad48d 100644 --- a/src/thermophysicalModels/basic/Make/files +++ b/src/thermophysicalModels/basic/Make/files @@ -14,6 +14,4 @@ derivedFvPatchFields/mixedEnergy/mixedEnergyFvPatchScalarField.C derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.C derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.C -derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C - LIB = $(FOAM_LIBBIN)/libfluidThermophysicalModels diff --git a/src/thermophysicalModels/basic/basicThermo/basicThermo.C b/src/thermophysicalModels/basic/basicThermo/basicThermo.C index e2fc874b5ef6ba930a1c85a745cf2032891c6e86..f5355ef8779cf087984a1e20682da7c48e17a766 100644 --- a/src/thermophysicalModels/basic/basicThermo/basicThermo.C +++ b/src/thermophysicalModels/basic/basicThermo/basicThermo.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2012-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -24,6 +24,14 @@ License \*---------------------------------------------------------------------------*/ #include "basicThermo.H" +#include "zeroGradientFvPatchFields.H" +#include "fixedEnergyFvPatchScalarField.H" +#include "gradientEnergyFvPatchScalarField.H" +#include "mixedEnergyFvPatchScalarField.H" +#include "fixedJumpFvPatchFields.H" +#include "fixedJumpAMIFvPatchFields.H" +#include "energyJumpFvPatchScalarField.H" +#include "energyJumpAMIFvPatchScalarField.H" /* * * * * * * * * * * * * * * private static data * * * * * * * * * * * * * */ @@ -36,6 +44,84 @@ namespace Foam const Foam::word Foam::basicThermo::dictName("thermophysicalProperties"); + +// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // + +Foam::wordList Foam::basicThermo::heBoundaryBaseTypes() +{ + const volScalarField::GeometricBoundaryField& tbf = + this->T_.boundaryField(); + + wordList hbt(tbf.size(), word::null); + + forAll(tbf, patchi) + { + if (isA<fixedJumpFvPatchScalarField>(tbf[patchi])) + { + const fixedJumpFvPatchScalarField& pf = + dynamic_cast<const fixedJumpFvPatchScalarField&>(tbf[patchi]); + + hbt[patchi] = pf.interfaceFieldType(); + } + else if (isA<fixedJumpAMIFvPatchScalarField>(tbf[patchi])) + { + const fixedJumpAMIFvPatchScalarField& pf = + dynamic_cast<const fixedJumpAMIFvPatchScalarField&> + ( + tbf[patchi] + ); + + hbt[patchi] = pf.interfaceFieldType(); + } + } + + return hbt; +} + + +Foam::wordList Foam::basicThermo::heBoundaryTypes() +{ + const volScalarField::GeometricBoundaryField& tbf = + this->T_.boundaryField(); + + wordList hbt = tbf.types(); + + forAll(tbf, patchi) + { + if (isA<fixedValueFvPatchScalarField>(tbf[patchi])) + { + hbt[patchi] = fixedEnergyFvPatchScalarField::typeName; + } + else if + ( + isA<zeroGradientFvPatchScalarField>(tbf[patchi]) + || isA<fixedGradientFvPatchScalarField>(tbf[patchi]) + ) + { + hbt[patchi] = gradientEnergyFvPatchScalarField::typeName; + } + else if (isA<mixedFvPatchScalarField>(tbf[patchi])) + { + hbt[patchi] = mixedEnergyFvPatchScalarField::typeName; + } + else if (isA<fixedJumpFvPatchScalarField>(tbf[patchi])) + { + hbt[patchi] = energyJumpFvPatchScalarField::typeName; + } + else if (isA<fixedJumpAMIFvPatchScalarField>(tbf[patchi])) + { + hbt[patchi] = energyJumpAMIFvPatchScalarField::typeName; + } + else if (tbf[patchi].type() == "energyRegionCoupledFvPatchScalarField") + { + hbt[patchi] = "energyRegionCoupledFvPatchScalarField"; + } + } + + return hbt; +} + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::volScalarField& Foam::basicThermo::lookupOrConstruct @@ -395,6 +481,12 @@ const Foam::volScalarField& Foam::basicThermo::T() const } +Foam::volScalarField& Foam::basicThermo::T() +{ + return T_; +} + + const Foam::volScalarField& Foam::basicThermo::alpha() const { return alpha_; diff --git a/src/thermophysicalModels/basic/basicThermo/basicThermo.H b/src/thermophysicalModels/basic/basicThermo/basicThermo.H index e652c30ee6cc3216a0227160a9450e99e5223f78..fca4fab70d36cf6c46232f510c695cf7cb8165a3 100644 --- a/src/thermophysicalModels/basic/basicThermo/basicThermo.H +++ b/src/thermophysicalModels/basic/basicThermo/basicThermo.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2012-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -77,6 +77,9 @@ protected: //- Should the dpdt term be included in the enthalpy equation Switch dpdt_; + + // Protected Member Functions + //- Construct as copy (not implemented) basicThermo(const basicThermo&); @@ -86,6 +89,14 @@ protected: const char* name ) const; + //- Return the enthalpy/internal energy field boundary types + // by interrogating the temperature field boundary types + wordList heBoundaryTypes(); + + //- Return the enthalpy/internal energy field boundary base types + // by interrogating the temperature field boundary types + wordList heBoundaryBaseTypes(); + public: @@ -314,6 +325,10 @@ public: //- Temperature [K] virtual const volScalarField& T() const; + //- Temperature [K] + // Non-const access allowed for transport equations + virtual volScalarField& T(); + //- Heat capacity at constant pressure [J/kg/K] virtual tmp<volScalarField> Cp() const = 0; diff --git a/src/thermophysicalModels/basic/heThermo/heThermo.C b/src/thermophysicalModels/basic/heThermo/heThermo.C index 5f49a4ba752e03e483865019a6f751a273925262..fae178684f225c9db8db54afc233f5b5b632470c 100644 --- a/src/thermophysicalModels/basic/heThermo/heThermo.C +++ b/src/thermophysicalModels/basic/heThermo/heThermo.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -24,94 +24,11 @@ License \*---------------------------------------------------------------------------*/ #include "heThermo.H" -#include "zeroGradientFvPatchFields.H" -#include "fixedEnergyFvPatchScalarField.H" #include "gradientEnergyFvPatchScalarField.H" #include "mixedEnergyFvPatchScalarField.H" -#include "fixedJumpFvPatchFields.H" -#include "fixedJumpAMIFvPatchFields.H" -#include "energyJumpFvPatchScalarField.H" -#include "energyJumpAMIFvPatchScalarField.H" // * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // -template<class BasicThermo, class MixtureType> -Foam::wordList Foam::heThermo<BasicThermo, MixtureType>::heBoundaryBaseTypes() -{ - const volScalarField::GeometricBoundaryField& tbf = - this->T_.boundaryField(); - - wordList hbt(tbf.size(), word::null); - - forAll(tbf, patchi) - { - if (isA<fixedJumpFvPatchScalarField>(tbf[patchi])) - { - const fixedJumpFvPatchScalarField& pf = - dynamic_cast<const fixedJumpFvPatchScalarField&>(tbf[patchi]); - - hbt[patchi] = pf.interfaceFieldType(); - } - else if (isA<fixedJumpAMIFvPatchScalarField>(tbf[patchi])) - { - const fixedJumpAMIFvPatchScalarField& pf = - dynamic_cast<const fixedJumpAMIFvPatchScalarField&> - ( - tbf[patchi] - ); - - hbt[patchi] = pf.interfaceFieldType(); - } - } - - return hbt; -} - - -template<class BasicThermo, class MixtureType> -Foam::wordList Foam::heThermo<BasicThermo, MixtureType>::heBoundaryTypes() -{ - const volScalarField::GeometricBoundaryField& tbf = - this->T_.boundaryField(); - - wordList hbt = tbf.types(); - - forAll(tbf, patchi) - { - if (isA<fixedValueFvPatchScalarField>(tbf[patchi])) - { - hbt[patchi] = fixedEnergyFvPatchScalarField::typeName; - } - else if - ( - isA<zeroGradientFvPatchScalarField>(tbf[patchi]) - || isA<fixedGradientFvPatchScalarField>(tbf[patchi]) - ) - { - hbt[patchi] = gradientEnergyFvPatchScalarField::typeName; - } - else if (isA<mixedFvPatchScalarField>(tbf[patchi])) - { - hbt[patchi] = mixedEnergyFvPatchScalarField::typeName; - } - else if (isA<fixedJumpFvPatchScalarField>(tbf[patchi])) - { - hbt[patchi] = energyJumpFvPatchScalarField::typeName; - } - else if (isA<fixedJumpAMIFvPatchScalarField>(tbf[patchi])) - { - hbt[patchi] = energyJumpAMIFvPatchScalarField::typeName; - } - else if (tbf[patchi].type() == "energyRegionCoupledFvPatchScalarField") - { - hbt[patchi] = "energyRegionCoupledFvPatchScalarField"; - } - } - - return hbt; -} - - template<class BasicThermo, class MixtureType> void Foam::heThermo<BasicThermo, MixtureType>:: heBoundaryCorrection(volScalarField& h) diff --git a/src/thermophysicalModels/basic/heThermo/heThermo.H b/src/thermophysicalModels/basic/heThermo/heThermo.H index f77d017e1396afd3840611449829eb89fbc6653a..ce5c732427246900593b85761d80f2418abc83c3 100644 --- a/src/thermophysicalModels/basic/heThermo/heThermo.H +++ b/src/thermophysicalModels/basic/heThermo/heThermo.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -64,14 +64,6 @@ protected: // Enthalpy/Internal energy - //- Return the enthalpy/internal energy field boundary types - // by interrogating the temperature field boundary types - wordList heBoundaryTypes(); - - //- Return the enthalpy/internal energy field boundary base types - // by interrogating the temperature field boundary types - wordList heBoundaryBaseTypes(); - //- Correct the enthalpy/internal energy field boundaries void heBoundaryCorrection(volScalarField& he); diff --git a/src/turbulenceModels/compressible/turbulenceModel/Make/files b/src/turbulenceModels/compressible/turbulenceModel/Make/files index e089735210054addf0e20ed8016f93eb256c6d8c..5bb1f79ba925f65de57a2c23a537394109b9c4f8 100644 --- a/src/turbulenceModels/compressible/turbulenceModel/Make/files +++ b/src/turbulenceModels/compressible/turbulenceModel/Make/files @@ -4,10 +4,10 @@ laminar/laminar.C derivedFvPatchFields/turbulentHeatFluxTemperature/turbulentHeatFluxTemperatureFvPatchScalarField.C derivedFvPatchFields/temperatureCoupledBase/temperatureCoupledBase.C derivedFvPatchFields/turbulentTemperatureCoupledBaffleMixed/turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C -derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarFields.C +derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarFields.C derivedFvPatchFields/totalFlowRateAdvectiveDiffusive/totalFlowRateAdvectiveDiffusiveFvPatchScalarField.C derivedFvPatchFields/turbulentTemperatureRadCoupledMixed/turbulentTemperatureRadCoupledMixedFvPatchScalarField.C derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C - +derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C LIB = $(FOAM_LIBBIN)/libcompressibleTurbulenceModel diff --git a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarField.C b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.C similarity index 90% rename from src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarField.C rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.C index 2d4f331e20200e85dd442001d659367956c505c7..f05919061eddd7b26a924da8772bea5786dc2b99 100644 --- a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarField.C +++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -39,8 +39,8 @@ namespace compressible // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // template<class solidType> -thermoBaffle1DFvPatchScalarField<solidType>:: -thermoBaffle1DFvPatchScalarField +thermalBaffle1DFvPatchScalarField<solidType>:: +thermalBaffle1DFvPatchScalarField ( const fvPatch& p, const DimensionedField<scalar, volMesh>& iF @@ -56,10 +56,10 @@ thermoBaffle1DFvPatchScalarField template<class solidType> -thermoBaffle1DFvPatchScalarField<solidType>:: -thermoBaffle1DFvPatchScalarField +thermalBaffle1DFvPatchScalarField<solidType>:: +thermalBaffle1DFvPatchScalarField ( - const thermoBaffle1DFvPatchScalarField& ptf, + const thermalBaffle1DFvPatchScalarField& ptf, const fvPatch& p, const DimensionedField<scalar, volMesh>& iF, const fvPatchFieldMapper& mapper @@ -75,8 +75,8 @@ thermoBaffle1DFvPatchScalarField template<class solidType> -thermoBaffle1DFvPatchScalarField<solidType>:: -thermoBaffle1DFvPatchScalarField +thermalBaffle1DFvPatchScalarField<solidType>:: +thermalBaffle1DFvPatchScalarField ( const fvPatch& p, const DimensionedField<scalar, volMesh>& iF, @@ -94,8 +94,8 @@ thermoBaffle1DFvPatchScalarField { FatalErrorIn ( - "thermoBaffle1DFvPatchScalarField::" - "thermoBaffle1DFvPatchScalarField" + "thermalBaffle1DFvPatchScalarField::" + "thermalBaffle1DFvPatchScalarField" "(" "const fvPatch&,\n" "const DimensionedField<scalar, volMesh>&, " @@ -130,10 +130,10 @@ thermoBaffle1DFvPatchScalarField template<class solidType> -thermoBaffle1DFvPatchScalarField<solidType>:: -thermoBaffle1DFvPatchScalarField +thermalBaffle1DFvPatchScalarField<solidType>:: +thermalBaffle1DFvPatchScalarField ( - const thermoBaffle1DFvPatchScalarField& ptf + const thermalBaffle1DFvPatchScalarField& ptf ) : mixedFvPatchScalarField(ptf), @@ -146,10 +146,10 @@ thermoBaffle1DFvPatchScalarField template<class solidType> -thermoBaffle1DFvPatchScalarField<solidType>:: -thermoBaffle1DFvPatchScalarField +thermalBaffle1DFvPatchScalarField<solidType>:: +thermalBaffle1DFvPatchScalarField ( - const thermoBaffle1DFvPatchScalarField& ptf, + const thermalBaffle1DFvPatchScalarField& ptf, const DimensionedField<scalar, volMesh>& iF ) : @@ -165,7 +165,7 @@ thermoBaffle1DFvPatchScalarField // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // template<class solidType> -void thermoBaffle1DFvPatchScalarField<solidType>::autoMap +void thermalBaffle1DFvPatchScalarField<solidType>::autoMap ( const fvPatchFieldMapper& m ) @@ -174,7 +174,7 @@ void thermoBaffle1DFvPatchScalarField<solidType>::autoMap } template<class solidType> -void thermoBaffle1DFvPatchScalarField<solidType>::rmap +void thermalBaffle1DFvPatchScalarField<solidType>::rmap ( const fvPatchScalarField& ptf, const labelList& addr @@ -185,7 +185,7 @@ void thermoBaffle1DFvPatchScalarField<solidType>::rmap template<class solidType> -void thermoBaffle1DFvPatchScalarField<solidType>::updateCoeffs() +void thermalBaffle1DFvPatchScalarField<solidType>::updateCoeffs() { if (updated()) { @@ -242,8 +242,8 @@ void thermoBaffle1DFvPatchScalarField<solidType>::updateCoeffs() ); mpp.map().distribute(nbrQDot); - const thermoBaffle1DFvPatchScalarField& nbrField = - refCast<const thermoBaffle1DFvPatchScalarField> + const thermalBaffle1DFvPatchScalarField& nbrField = + refCast<const thermalBaffle1DFvPatchScalarField> ( nbrPatch.template lookupPatchField<volScalarField, scalar>(TName_) ); @@ -347,7 +347,7 @@ void thermoBaffle1DFvPatchScalarField<solidType>::updateCoeffs() } template <class solidType> -void thermoBaffle1DFvPatchScalarField<solidType>:: +void thermalBaffle1DFvPatchScalarField<solidType>:: write(Ostream& os) const { mixedFvPatchScalarField::write(os); diff --git a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarField.H b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.H similarity index 81% rename from src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarField.H rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.H index 33a26f39fd924a34e90e74b42a2f471419add414..c2b209cb16421226b0907bbf8b881445a907dca3 100644 --- a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarField.H +++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -22,19 +22,19 @@ License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. Class - Foam::thermoBaffle1DFvPatchScalarField + Foam::thermalBaffle1DFvPatchScalarField Description Boundary which solves the 1D steady state heat transfer equation through a baffle. SourceFiles - thermoBaffle1DFvPatchScalarField.C + thermalBaffle1DFvPatchScalarField.C \*---------------------------------------------------------------------------*/ -#ifndef thermoBaffle1DFvPatchScalarField_H -#define thermoBaffle1DFvPatchScalarField_H +#ifndef thermalBaffle1DFvPatchScalarField_H +#define thermalBaffle1DFvPatchScalarField_H #include "mixedFvPatchFields.H" #include "autoPtr.H" @@ -48,11 +48,11 @@ namespace compressible { /*---------------------------------------------------------------------------*\ - Class thermoBaffle1DFvPatchScalarField Declaration + Class thermalBaffle1DFvPatchScalarField Declaration \*---------------------------------------------------------------------------*/ template<class solidType> -class thermoBaffle1DFvPatchScalarField +class thermalBaffle1DFvPatchScalarField : public mixedFvPatchScalarField { @@ -77,20 +77,20 @@ class thermoBaffle1DFvPatchScalarField public: //- Runtime type information - TypeName("compressible::thermoBaffle1D"); + TypeName("compressible::thermalBaffle1D"); // Constructors //- Construct from patch and internal field - thermoBaffle1DFvPatchScalarField + thermalBaffle1DFvPatchScalarField ( const fvPatch&, const DimensionedField<scalar, volMesh>& ); //- Construct from patch, internal field and dictionary - thermoBaffle1DFvPatchScalarField + thermalBaffle1DFvPatchScalarField ( const fvPatch&, const DimensionedField<scalar, volMesh>&, @@ -98,19 +98,19 @@ public: ); //- Construct by mapping given - // thermoBaffle1DFvPatchScalarField onto a new patch - thermoBaffle1DFvPatchScalarField + // thermalBaffle1DFvPatchScalarField onto a new patch + thermalBaffle1DFvPatchScalarField ( - const thermoBaffle1DFvPatchScalarField&, + const thermalBaffle1DFvPatchScalarField&, const fvPatch&, const DimensionedField<scalar, volMesh>&, const fvPatchFieldMapper& ); //- Construct as copy - thermoBaffle1DFvPatchScalarField + thermalBaffle1DFvPatchScalarField ( - const thermoBaffle1DFvPatchScalarField& + const thermalBaffle1DFvPatchScalarField& ); //- Construct and return a clone @@ -118,14 +118,14 @@ public: { return tmp<fvPatchScalarField> ( - new thermoBaffle1DFvPatchScalarField(*this) + new thermalBaffle1DFvPatchScalarField(*this) ); } //- Construct as copy setting internal field reference - thermoBaffle1DFvPatchScalarField + thermalBaffle1DFvPatchScalarField ( - const thermoBaffle1DFvPatchScalarField&, + const thermalBaffle1DFvPatchScalarField&, const DimensionedField<scalar, volMesh>& ); @@ -137,7 +137,7 @@ public: { return tmp<fvPatchScalarField> ( - new thermoBaffle1DFvPatchScalarField(*this, iF) + new thermalBaffle1DFvPatchScalarField(*this, iF) ); } @@ -176,7 +176,7 @@ public: // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #ifdef NoRepository -# include "thermoBaffle1DFvPatchScalarField.C" +# include "thermalBaffle1DFvPatchScalarField.C" #endif // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarFields.C b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarFields.C similarity index 80% rename from src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarFields.C rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarFields.C index 2e180238f49c2ef735362b42ea90ce1bfb1c196c..ca3f232992d2101e7876768bb09b442b055039a0 100644 --- a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarFields.C +++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarFields.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -23,7 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "thermoBaffle1DFvPatchScalarFields.H" +#include "thermalBaffle1DFvPatchScalarFields.H" #include "addToRunTimeSelectionTable.H" @@ -38,28 +38,28 @@ namespace compressible defineTemplateTypeNameAndDebugWithName ( - constSolid_thermoBaffle1DFvPatchScalarField, - "compressible::thermoBaffle1D<hConstSolidThermoPhysics>", + constSolid_thermalBaffle1DFvPatchScalarField, + "compressible::thermalBaffle1D<hConstSolidThermoPhysics>", 0 ); addToPatchFieldRunTimeSelection ( fvPatchScalarField, - constSolid_thermoBaffle1DFvPatchScalarField + constSolid_thermalBaffle1DFvPatchScalarField ); defineTemplateTypeNameAndDebugWithName ( - expoSolid_thermoBaffle1DFvPatchScalarField, - "compressible::thermoBaffle1D<hExponentialSolidThermoPhysics>", + expoSolid_thermalBaffle1DFvPatchScalarField, + "compressible::thermalBaffle1D<hExponentialSolidThermoPhysics>", 0 ); addToPatchFieldRunTimeSelection ( fvPatchScalarField, - expoSolid_thermoBaffle1DFvPatchScalarField + expoSolid_thermalBaffle1DFvPatchScalarField ); // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarFields.H b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarFields.H similarity index 81% rename from src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarFields.H rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarFields.H index 931aeaae0705ce1896bcc0e0224a4facdb618300..db7dcf0c9fc1ecd64572cff16cb68e64b7e4ae5c 100644 --- a/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermoBaffle1D/thermoBaffle1DFvPatchScalarFields.H +++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarFields.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -23,10 +23,10 @@ License \*---------------------------------------------------------------------------*/ -#ifndef thermoBaffle1DFvPatchScalarFields_H -#define thermoBaffle1DFvPatchScalarFields_H +#ifndef thermalBaffle1DFvPatchScalarFields_H +#define thermalBaffle1DFvPatchScalarFields_H -#include "thermoBaffle1DFvPatchScalarField.H" +#include "thermalBaffle1DFvPatchScalarField.H" #include "solidThermoPhysicsTypes.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -38,15 +38,15 @@ namespace compressible // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - typedef thermoBaffle1DFvPatchScalarField + typedef thermalBaffle1DFvPatchScalarField < hConstSolidThermoPhysics - >constSolid_thermoBaffle1DFvPatchScalarField; + >constSolid_thermalBaffle1DFvPatchScalarField; - typedef thermoBaffle1DFvPatchScalarField + typedef thermalBaffle1DFvPatchScalarField < hExponentialSolidThermoPhysics - >expoSolid_thermoBaffle1DFvPatchScalarField; + >expoSolid_thermalBaffle1DFvPatchScalarField; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/thermophysicalModels/basic/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C similarity index 90% rename from src/thermophysicalModels/basic/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C index da9ff9b2bbda41af7728d06317b2eb92c211880d..2efdccde5e1f2fa37b09ab2ead23c80902639058 100644 --- a/src/thermophysicalModels/basic/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C +++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -26,8 +26,7 @@ License #include "wallHeatTransferFvPatchScalarField.H" #include "addToRunTimeSelectionTable.H" #include "fvPatchFieldMapper.H" -#include "volFields.H" -#include "basicThermo.H" +#include "turbulenceModel.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -149,19 +148,19 @@ void Foam::wallHeatTransferFvPatchScalarField::updateCoeffs() return; } - const basicThermo& thermo = basicThermo::lookupThermo(*this); - const label patchi = patch().index(); + const compressible::turbulenceModel& turbModel = + db().lookupObject<compressible::turbulenceModel> + ( + "turbulenceModel" + ); - const scalarField& pw = thermo.p().boundaryField()[patchi]; - const scalarField& Tw = thermo.T().boundaryField()[patchi]; - const scalarField Cpw(thermo.Cp(pw, Tw, patchi)); + const label patchi = patch().index(); valueFraction() = 1.0/ ( 1.0 - + Cpw*thermo.alpha().boundaryField()[patchi] - *patch().deltaCoeffs()/alphaWall_ + + turbModel.kappaEff(patchi)*patch().deltaCoeffs()/alphaWall_ ); mixedFvPatchScalarField::updateCoeffs(); diff --git a/src/thermophysicalModels/basic/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H similarity index 98% rename from src/thermophysicalModels/basic/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H rename to src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H index da2ab661efd19dd253456865cb9a9bfa240a9a67..fb1630ff0e7d51a9124a5a76de65ea28cb60fa46 100644 --- a/src/thermophysicalModels/basic/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H +++ b/src/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/thermoBaffleProperties b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/thermalBaffleProperties similarity index 91% rename from tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/thermoBaffleProperties rename to tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/thermalBaffleProperties index acabb40438089d19f6ad5839a27658f47686e44e..9a2dade638e5cab17c6e9b4faf0c0cf5cf9d0dda 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/thermoBaffleProperties +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/constant/thermalBaffleProperties @@ -11,17 +11,17 @@ FoamFile format ascii; class dictionary; location "constant"; - object thermoBaffleProperties; + object thermalBaffleProperties; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -thermoBaffleModel none; +thermalBaffleModel none; active no; regionName none; -thermoBaffleCoeffs +thermalBaffleCoeffs { } diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffleRegion/changeDictionaryDict b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffleRegion/changeDictionaryDict index 1931c502a6651751c53662583940d9fa2288860a..c325fcd6999b17982c408d26ea7d22c552563ce9 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffleRegion/changeDictionaryDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/baffleRegion/changeDictionaryDict @@ -22,7 +22,7 @@ dictionaryReplacement { "region0_to.*" { - type compressible::thermoBaffle; + type compressible::thermalBaffle; neighbourFieldName T; kappa solidThermo; kappaName none; diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict index 6146edeb2b4e31f407a9f35aa33175b0b03db2dc..0674354a506bc0e24deb32cc2a01b2de72d4416d 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict @@ -88,7 +88,7 @@ dictionaryReplacement { "baffle.*" { - type compressible::thermoBaffle1D<hConstSolidThermoPhysics>; + type compressible::thermalBaffle1D<hConstSolidThermoPhysics>; baffleActivated yes; thickness uniform 0.005; // thickness [m] Qs uniform 100; // heat flux [W/m2] diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict.baffle b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict.baffle index d2933855c572bd3905f6492bf15262190aa09d5d..1df570730cc50022f4f6765261c07fe0b6d24ca1 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict.baffle +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict.baffle @@ -88,7 +88,7 @@ dictionaryReplacement { "baffle1Wall.*" { - type compressible::thermoBaffle1D<hConstSolidThermoPhysics>; + type compressible::thermalBaffle1D<hConstSolidThermoPhysics>; baffleActivated yes; thickness uniform 0.005; // thickness [m] Qs uniform 100; // heat flux [W/m2] diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict.baffleRegion b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict.baffleRegion index 1cbf29f10c6a875fde7c0af7161fc6d80d682be4..dae4c6fe77a8eb7a30b8ba02a66dc87ccf315c6d 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict.baffleRegion +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/changeDictionaryDict.baffleRegion @@ -91,7 +91,7 @@ dictionaryReplacement "region0_to.*" { - type compressible::thermoBaffle; + type compressible::thermalBaffle; // Coupled BC. neighbourFieldName T; @@ -99,11 +99,11 @@ dictionaryReplacement kappaName none; // Thermo baffle model - thermoBaffleModel thermoBaffle; + thermalBaffleModel thermalBaffle; regionName baffleRegion; infoOutput no; active yes; - thermoBaffleCoeffs + thermalBaffleCoeffs { } diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/controlDict b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/controlDict index acd337d87733d98406a88afc1b08b05124efa50f..f35c15f101f989ea0db7c5697a90cee2b16aaaf5 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/controlDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/controlDict @@ -44,6 +44,6 @@ timePrecision 6; runTimeModifiable true; -libs ("libthermoBaffleModels.so" "libcompressibleRASModels.so"); +libs ("libthermalBaffleModels.so" "libcompressibleRASModels.so"); // ************************************************************************* // diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/createBafflesDict b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/createBafflesDict index bc1ec594fd62af581207933a1c55e8505ab839ff..310a64bd7f8b86f2a11d883411ef40b6b6925e2e 100644 --- a/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/createBafflesDict +++ b/tutorials/heatTransfer/buoyantSimpleFoam/circuitBoardCooling/system/createBafflesDict @@ -52,7 +52,7 @@ baffles { T { - type compressible::thermoBaffle1D<hConstSolidThermoPhysics>; + type compressible::thermalBaffle1D<hConstSolidThermoPhysics>; baffleActivated yes; thickness uniform 0.005; // thickness [m] Qs uniform 100; // heat flux [W/m2] diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/thermophysicalProperties b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/thermophysicalProperties new file mode 100644 index 0000000000000000000000000000000000000000..3c26cf1692ad357236bb940734e078d27d8d1ac3 --- /dev/null +++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/thermophysicalProperties @@ -0,0 +1,19 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object thermophysicalProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + +// ************************************************************************* // diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/thermophysicalProperties1 b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/thermophysicalProperties1 new file mode 100644 index 0000000000000000000000000000000000000000..57295cafbddae1ebb95e37c40b4281620431352b --- /dev/null +++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/thermophysicalProperties1 @@ -0,0 +1,53 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object thermophysicalProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +thermoType +{ + type heRhoThermo; + mixture pureMixture; + transport const; + thermo hConst; + equationOfState perfectFluid; + specie specie; + energy sensibleInternalEnergy; +} + +mixture +{ + specie + { + nMoles 1; + molWeight 28.9; //2.77; + } + equationOfState + { + rho0 1027; + } + thermodynamics + { + Cp 4195; + Hf 0; + } + transport + { + mu 3.645e-4; + Pr 2.289; + } +} + + +// ************************************************************************* // diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/thermophysicalProperties2 b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/thermophysicalProperties2 new file mode 100644 index 0000000000000000000000000000000000000000..e61009c10be927d2af1b6981cc75ad368e85d5c3 --- /dev/null +++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/thermophysicalProperties2 @@ -0,0 +1,49 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object thermophysicalProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +thermoType +{ + type heRhoThermo; + mixture pureMixture; + transport const; + thermo hConst; + equationOfState perfectGas; + specie specie; + energy sensibleInternalEnergy; +} + +mixture +{ + specie + { + nMoles 1; + molWeight 28.9; + } + thermodynamics + { + Cp 1007; + Hf 0; + } + transport + { + mu 1.84e-05; + Pr 0.7; + } +} + + +// ************************************************************************* // diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/transportProperties b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/transportProperties index 564df56f2083c586a247b9a7276aba1b90d3a4f2..78f85f47a2d7fd6c44c040653766d237404fba31 100644 --- a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/transportProperties +++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/constant/transportProperties @@ -22,16 +22,6 @@ water transportModel Newtonian; nu 1e-06; rho 1000; - k 0; // 0.613; - Cv 4179; - - equationOfState - { - type perfectFluid; - - rho0 1000; - R 3000; - } } air @@ -39,16 +29,6 @@ air transportModel Newtonian; nu 1.589e-05; rho 1; - k 0; // 2.63e-2; - Cv 721; - - equationOfState - { - type perfectFluid; - - rho0 0; - R 287; - } } pMin pMin [ 1 -1 -2 0 0 0 0 ] 10000; diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/system/fvSchemes b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/system/fvSchemes index 903d94d30c6e6ac6ecc85e0d048a668f7d3cb220..0c204f053f8dad1f6c9cf2ebace5172c11f77ea5 100644 --- a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/system/fvSchemes +++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/system/fvSchemes @@ -33,6 +33,7 @@ divSchemes div(phid1,p_rgh) Gauss upwind; div(phid2,p_rgh) Gauss upwind; div(rho*phi,T) Gauss upwind; + div(rho*phi,K) Gauss upwind; div(phi,k) Gauss vanLeer; div((muEff*dev(T(grad(U))))) Gauss linear; } diff --git a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/system/fvSolution b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/system/fvSolution index 461897454640df6743233c416536bbb89b0fa6a0..9066c1c700c4ba078eae024acd15d76d07f45f55 100644 --- a/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/system/fvSolution +++ b/tutorials/multiphase/compressibleInterFoam/les/depthCharge2D/system/fvSolution @@ -39,7 +39,7 @@ solvers maxIter 100; } - "(rho|rhoFinal)" + ".*(rho|rhoFinal)" { solver diagonal; }