diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C index 557017ccad4c7254298b1cc13622623b11d846d0..a0bd72c3b4b73d2d0a28a80acb40f7a95d7ec863 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C @@ -60,14 +60,9 @@ int main(int argc, char *argv[]) #include "createFluidMeshes.H" #include "createSolidMeshes.H" - #include "createPorousFluidRegions.H" - #include "createPorousSolidMeshes.H" #include "createFluidFields.H" #include "createSolidFields.H" - #include "createPorousFluidFields.H" - #include "createPorousSolidFields.H" - #include "initContinuityErrs.H" #include "readTimeControls.H" @@ -116,24 +111,6 @@ int main(int argc, char *argv[]) #include "solveFluid.H" } - forAll(porousFluidRegions, i) - { - Info<< "\nSolving for fluid porous region " - << porousFluidRegions[i].name() << endl; - #include "setPorousFluidFields.H" - #include "readPorousFluidRegionPIMPLEControls.H" - #include "solvePorousFluid.H" - } - - forAll(porousSolidRegions, i) - { - Info<< "\nSolving for porous solid region " - << porousSolidRegions[i].name() << endl; - #include "setPorousRegionSolidFields.H" - #include "readPorousSolidMultiRegionPIMPLEControls.H" - #include "solvePorousSolid.H" - } - forAll(solidRegions, i) { Info<< "\nSolving for solid region " diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/options b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/options index d5c1e47394af7f6b76f040c6455916a661561d92..7418bfd694eb28a52412869885e3df3a350abaae 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/options +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/options @@ -1,8 +1,7 @@ EXE_INC = \ -Ifluid \ -Isolid \ - -I./porousFluid \ - -I./porousSolid \ + -I../solid \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/finiteVolume/cfdTools \ diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C index 2f4b801cb398d5002de1ca0ec748199efc80eccf..45861220061db63a2bb6d2fe75671e8addec2b49 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C @@ -50,13 +50,9 @@ int main(int argc, char *argv[]) #include "createFluidMeshes.H" #include "createSolidMeshes.H" - #include "createPorousFluidRegions.H" - #include "createPorousSolidMeshes.H" #include "createFluidFields.H" #include "createSolidFields.H" - #include "createPorousFluidFields.H" - #include "createPorousSolidFields.H" #include "initContinuityErrs.H" @@ -74,24 +70,6 @@ int main(int argc, char *argv[]) #include "solveFluid.H" } - forAll(porousFluidRegions, i) - { - Info<< "\nSolving for fluid porous region " - << porousFluidRegions[i].name() << endl; - #include "setPorousFluidFields.H" - #include "readPorousFluidRegionSIMPLEControls.H" - #include "solvePorousFluid.H" - } - - forAll(porousSolidRegions, i) - { - Info<< "\nSolving for porous solid region " - << porousSolidRegions[i].name() << endl; - #include "setPorousRegionSolidFields.H" - #include "readPorousSolidMultiRegionSIMPLEControls.H" - #include "solvePorousSolid.H" - } - forAll(solidRegions, i) { Info<< "\nSolving for solid region " diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/UPorousFluidEqn.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/UPorousFluidEqn.H deleted file mode 100644 index 4c1081f5d49d0ff82145543cd69ccad1fe302452..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/UPorousFluidEqn.H +++ /dev/null @@ -1,11 +0,0 @@ - // Solve the Momentum equation - tmp<fvVectorMatrix> porousUEqn - ( - fvm::div(porousPhi, porousU) - + turbPorous.divDevRhoReff(porousU) - + porousSources(porousRho, porousU) - ); - - porousUEqn().relax(); - - solve(porousUEqn() == -fvc::grad(porousP)); diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/createPorousFluidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/createPorousFluidFields.H deleted file mode 100644 index 00762909f3f60e2db51259074cd244908964da01..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/createPorousFluidFields.H +++ /dev/null @@ -1,181 +0,0 @@ - // Initialise porous field pointer lists - PtrList<rhoThermo> thermoPorous(porousFluidRegions.size()); - PtrList<volScalarField> rhoPorous(porousFluidRegions.size()); - PtrList<volScalarField> kappaPorous(porousFluidRegions.size()); - PtrList<volVectorField> UPorous(porousFluidRegions.size()); - PtrList<surfaceScalarField> phiPorous(porousFluidRegions.size()); - PtrList<compressible::turbulenceModel> turbulencePorous - ( - porousFluidRegions.size() - ); - PtrList<volScalarField> pPorous(porousFluidRegions.size()); - - List<scalar> initialMassFluidPorous(porousFluidRegions.size()); - List<label> pRefCellFluidPorous(porousFluidRegions.size(),0); - List<scalar> pRefValueFluidPorous(porousFluidRegions.size(),0.0); - - PtrList<dimensionedScalar> rhoMaxPorous(fluidRegions.size()); - PtrList<dimensionedScalar> rhoMinPorous(fluidRegions.size()); - - PtrList<IObasicSourceList> heatPorousSources - ( - porousFluidRegions.size() - ); - - forAll(porousFluidRegions, i) - { - Info<< "Reading fluid mesh thermophysical properties for porous " - << porousFluidRegions[i].name() << nl << endl; - - Info<< " Adding to thermoFluid porous\n" << endl; - - thermoPorous.set - ( - i, - rhoThermo::New(porousFluidRegions[i]).ptr() - ); - - Info<< " Adding to rhoPorous\n" << endl; - rhoPorous.set - ( - i, - new volScalarField - ( - IOobject - ( - "rho", - runTime.timeName(), - porousFluidRegions[i], - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - thermoPorous[i].rho() - ) - ); - - Info<< " Adding to UPorous\n" << endl; - UPorous.set - ( - i, - new volVectorField - ( - IOobject - ( - "U", - runTime.timeName(), - porousFluidRegions[i], - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - porousFluidRegions[i] - ) - ); - - Info<< " Adding to phiPorous\n" << endl; - phiPorous.set - ( - i, - new surfaceScalarField - ( - IOobject - ( - "phi", - runTime.timeName(), - porousFluidRegions[i], - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - linearInterpolate(rhoPorous[i]*UPorous[i]) - & porousFluidRegions[i].Sf() - ) - ); - - Info<< " Adding turbulence to porous\n" << endl; - turbulencePorous.set - ( - i, - compressible::turbulenceModel::New - ( - rhoPorous[i], - UPorous[i], - phiPorous[i], - thermoPorous[i] - ).ptr() - ); - - Info<< " Adding to kappaFluid\n" << endl; - kappaPorous.set - ( - i, - new volScalarField - ( - IOobject - ( - "kappaPorous", - runTime.timeName(), - porousFluidRegions[i], - IOobject::NO_READ, - IOobject::NO_WRITE - ), - thermoPorous[i].Cp()*thermoPorous[i].alpha() - ) - ); - - pPorous.set - ( - i, - new volScalarField - ( - IOobject - ( - "p", - runTime.timeName(), - porousFluidRegions[i], - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - porousFluidRegions[i] - ) - ); - - setRefCell - ( - thermoPorous[i].p(), - pPorous[i], - porousFluidRegions[i].solutionDict().subDict("SIMPLE"), - pRefCellFluidPorous[i], - pRefValueFluidPorous[i] - ); - - rhoMaxPorous.set - ( - i, - new dimensionedScalar - ( - porousFluidRegions[i].solutionDict().subDict("SIMPLE").lookup - ( - "rhoMax" - ) - ) - ); - - rhoMinPorous.set - ( - i, - new dimensionedScalar - ( - porousFluidRegions[i].solutionDict().subDict("SIMPLE").lookup - ( - "rhoMin" - ) - ) - ); - - heatPorousSources.set - ( - i, - new IObasicSourceList(porousFluidRegions[i]) - ); - } - - diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/createPorousFluidRegions.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/createPorousFluidRegions.H deleted file mode 100644 index a414d8a9724f85d9d29f85b8b0e43554763e9c04..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/createPorousFluidRegions.H +++ /dev/null @@ -1,25 +0,0 @@ - const wordList porousFluidNames(rp["porousFluid"]); - - PtrList<fvMesh> porousFluidRegions(porousFluidNames.size()); - - forAll (porousFluidNames, iPorous) - { - const word porousFluidName = porousFluidNames[iPorous]; - Info<< "Create porous fluid region " << porousFluidName - << nl << endl; - - porousFluidRegions.set - ( - iPorous, - new fvMesh - ( - IOobject - ( - porousFluidName, - runTime.timeName(), - runTime, - IOobject::MUST_READ - ) - ) - ); - } diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/hPorousFluidEqn.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/hPorousFluidEqn.H deleted file mode 100644 index fcc8b054a2e658615090961e7a94ae6628ddebd3..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/hPorousFluidEqn.H +++ /dev/null @@ -1,19 +0,0 @@ -{ - fvScalarMatrix hPorousEqn - ( - fvm::div(porousPhi, porousH) - - fvm::laplacian(turbPorous.alphaEff(), porousH) - == - - fvc::div(porousPhi, 0.5*magSqr(porousU), "div(phi,K)") - + porousSources(porousRho, porousH) - ); - - hPorousEqn.relax(); - hPorousEqn.solve(); - - porousThermo.correct(); - - Info<< "Min/max in the porous T:" - << min(porousThermo.T()).value() << ' ' - << max(porousThermo.T()).value() << endl; -} diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/pPorousFluidEqn.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/pPorousFluidEqn.H deleted file mode 100644 index 9051805b87d2ef3ac383200a1d7940fcd800f4cc..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/pPorousFluidEqn.H +++ /dev/null @@ -1,53 +0,0 @@ -porousRho = porousThermo.rho(); -porousRho = max(porousRho, rhoMin); -porousRho = min(porousRho, rhoMax); -porousRho.relax(); - -volScalarField rAUPorous(1.0/porousUEqn().A()); - -porousU = rAUPorous*porousUEqn().H(); -porousUEqn.clear(); - -bool closedVolume = false; - -porousPhi = - fvc::interpolate(porousRho) - *(fvc::interpolate(porousU) & porousMesh.Sf()); - -for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) -{ - fvScalarMatrix pEqn - ( - fvm::laplacian(porousRho*rAUPorous, porousP) == fvc::div(porousPhi) - ); - - pEqn.setReference(pRefCell, pRefValue); - - pEqn.solve(); - - if (nonOrth == nNonOrthCorr) - { - porousPhi -= pEqn.flux(); - - } -} - -porousP.relax(); - -porousU -= rAUPorous*fvc::grad(porousP); -porousU.correctBoundaryConditions(); - -if (closedVolume) -{ - porousP += (initialMass - fvc::domainIntegrate(porousPsi*porousP)) - /fvc::domainIntegrate(porousPsi); -} - -porousRho = porousThermo.rho(); -porousRho = max(porousRho, rhoMin); -porousRho = min(porousRho, rhoMax); -porousRho.relax(); - -Info<< "rho max/min : " - << max(porousRho).value() << " " - << min(porousRho).value() << endl; diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/readPorousFluidRegionSIMPLEControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/readPorousFluidRegionSIMPLEControls.H deleted file mode 100644 index 615524b0755d5a189ca78a8b88cf5c95a397b957..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/readPorousFluidRegionSIMPLEControls.H +++ /dev/null @@ -1,4 +0,0 @@ - const dictionary& simple = porousMesh.solutionDict().subDict("SIMPLE"); - - const int nNonOrthCorr = - simple.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0); diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/setPorousFluidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/setPorousFluidFields.H deleted file mode 100644 index 5b3d004372aacaa62c65a0c8c2b7678385cf187b..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/setPorousFluidFields.H +++ /dev/null @@ -1,28 +0,0 @@ - const fvMesh& porousMesh = porousFluidRegions[i]; - - rhoThermo& porousThermo = thermoPorous[i]; - volScalarField& porousRho = rhoPorous[i]; - - volVectorField& porousU = UPorous[i]; - surfaceScalarField& porousPhi = phiPorous[i]; - - compressible::turbulenceModel& turbPorous = turbulencePorous[i]; - - volScalarField& porousP = porousThermo.p(); - const volScalarField& porousPsi = porousThermo.psi(); - volScalarField& porousH = porousThermo.he(); - - const dimensionedScalar initialMass - ( - "initialMass", - dimMass, - initialMassFluidPorous[i] - ); - - IObasicSourceList& porousSources = heatPorousSources[i]; - - const label pRefCell = pRefCellFluidPorous[i]; - const scalar pRefValue = pRefValueFluidPorous[i]; - - const scalar rhoMax = rhoMaxPorous[i].value(); - const scalar rhoMin = rhoMinPorous[i].value(); diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/solvePorousFluid.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/solvePorousFluid.H deleted file mode 100644 index 635b3ef1546746463e6949fde0a6fb1235cfefee..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousFluid/solvePorousFluid.H +++ /dev/null @@ -1,11 +0,0 @@ -// Pressure-velocity SIMPLE corrector - - porousP.storePrevIter(); - porousRho.storePrevIter(); - { - #include "UPorousFluidEqn.H" - #include "hPorousFluidEqn.H" - #include "pPorousFluidEqn.H" - } - - turbPorous.correct(); diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/createPorousSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/createPorousSolidFields.H deleted file mode 100644 index ab7ed2493565f77f0f262485bd8bbad4f759e122..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/createPorousSolidFields.H +++ /dev/null @@ -1,43 +0,0 @@ - // Initialise solid field pointer lists - PtrList<solidThermo> porousSolidThermos(porousSolidRegions.size()); - PtrList<IObasicSourceList> solidHeatSources(porousSolidRegions.size()); - PtrList<volScalarField> betavSolid(porousSolidRegions.size()); - - // Populate solid field pointer lists - forAll(porousSolidRegions, i) - { - Info<< "*** Reading porous solid mesh thermophysical " - << "properties for region " - << porousSolidRegions[i].name() << nl << endl; - - Info<< " Adding to thermos\n" << endl; - porousSolidThermos.set - ( - i, - solidThermo::New(porousSolidRegions[i]) - ); - Info<< " Adding sources\n" << endl; - solidHeatSources.set - ( - i, - new IObasicSourceList(porousSolidRegions[i]) - ); - - Info<< " Adding to betavSolid\n" << endl; - betavSolid.set - ( - i, - new volScalarField - ( - IOobject - ( - "betavSolid", - runTime.timeName(), - porousSolidRegions[i], - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - porousSolidRegions[i] - ) - ); - } diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/createPorousSolidMeshes.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/createPorousSolidMeshes.H deleted file mode 100644 index fa61f55af4f0ca9f1a4a2949a241090fc9e4f872..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/createPorousSolidMeshes.H +++ /dev/null @@ -1,24 +0,0 @@ - const wordList porousSolidNames(rp["porousSolid"]); - - PtrList<fvMesh> porousSolidRegions(porousSolidNames.size()); - - forAll(porousSolidNames, i) - { - Info<< "Create solid mesh for region " << porousSolidNames[i] - << " for time = " << runTime.timeName() << nl << endl; - - porousSolidRegions.set - ( - i, - new fvMesh - ( - IOobject - ( - porousSolidNames[i], - runTime.timeName(), - runTime, - IOobject::MUST_READ - ) - ) - ); - } diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/readPorousSolidMultiRegionSIMPLEControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/readPorousSolidMultiRegionSIMPLEControls.H deleted file mode 100644 index 4255ceb03341034f92618724e0d99903a87cdf0f..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/readPorousSolidMultiRegionSIMPLEControls.H +++ /dev/null @@ -1,4 +0,0 @@ - const dictionary& simple = mesh.solutionDict().subDict("SIMPLE"); - - const int nNonOrthCorr = - simple.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0); diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/setPorousRegionSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/setPorousRegionSolidFields.H deleted file mode 100644 index 93378bed004983a2f8bfbc772c0e8386f5756def..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/setPorousRegionSolidFields.H +++ /dev/null @@ -1,23 +0,0 @@ - const fvMesh& mesh = porousSolidRegions[i]; - - solidThermo& thermo = porousSolidThermos[i]; - const volScalarField& betav = betavSolid[i]; - - tmp<volScalarField> trho = thermo.rho(); - const volScalarField& rho = trho(); - - tmp<volScalarField> tcp = thermo.Cp(); - const volScalarField& cp = tcp(); - - tmp<volScalarField> tkappa = thermo.kappa(); - //tmp<volSymmTensorField> tkappa = thermo.directionalKappa()*betav; - - const volScalarField& kappa = tkappa(); - //const volSymmTensorField& K = tK(); - - tmp<volScalarField> talpha = thermo.alpha(); - const volScalarField& alpha = talpha(); - - volScalarField& h = thermo.he(); - - IObasicSourceList& sources = solidHeatSources[i]; diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/solidPorousRegionDiffusionNo.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/solidPorousRegionDiffusionNo.H deleted file mode 100644 index 77dc6f04bf44ba748359c2f8bf3267307416b650..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/solidPorousRegionDiffusionNo.H +++ /dev/null @@ -1,18 +0,0 @@ - scalar DiNum = -GREAT; - - forAll(solidRegions, i) - { -# include "setRegionSolidFields.H" - - DiNum = max - ( - solidRegionDiffNo - ( - solidRegions[i], - runTime, - rho*cp, - K - ), - DiNum - ); - } diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/solvePorousSolid.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/solvePorousSolid.H deleted file mode 100644 index 6546d4235d194a206b7ee3e93fc32501df2535dd..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/porousSolid/solvePorousSolid.H +++ /dev/null @@ -1,17 +0,0 @@ -{ - for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) - { - tmp<fvScalarMatrix> hEqn - ( - - fvm::laplacian(betav*alpha, h, "laplacian(alpha,h)") - + sources(rho, h) - ); - - hEqn().relax(); - hEqn().solve(); - } -} - -thermo.correct(); - -Info<< "Min/max T:" << min(thermo.T()) << ' ' << max(thermo.T()) << endl; diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H deleted file mode 100644 index b435b88d7fc2c52f65a7c0793e2c9d800c760b12..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H +++ /dev/null @@ -1,20 +0,0 @@ - // Initialise solid field pointer lists - PtrList<solidThermo> thermos(solidRegions.size()); - PtrList<radiation::radiationModel> radiations(solidRegions.size()); - - // Populate solid field pointer lists - forAll(solidRegions, i) - { - Info<< "*** Reading solid mesh thermophysical properties for region " - << solidRegions[i].name() << nl << endl; - - Info<< " Adding to thermos\n" << endl; - thermos.set - ( - i, - solidThermo::New(solidRegions[i]) - ); - - Info<< " Adding to radiations\n" << endl; - radiations.set(i, radiation::radiationModel::New(thermos[i].T())); - } diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidMeshes.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidMeshes.H deleted file mode 100644 index f2f2eea5ae8e2e33254d7d935fc027a91ffaa510..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidMeshes.H +++ /dev/null @@ -1,24 +0,0 @@ - const wordList solidsNames(rp["solid"]); - - PtrList<fvMesh> solidRegions(solidsNames.size()); - - forAll(solidsNames, i) - { - Info<< "Create solid mesh for region " << solidsNames[i] - << " for time = " << runTime.timeName() << nl << endl; - - solidRegions.set - ( - i, - new fvMesh - ( - IOobject - ( - solidsNames[i], - runTime.timeName(), - runTime, - IOobject::MUST_READ - ) - ) - ); - } diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H deleted file mode 100644 index 78c937d29e18a1d2c50604a659ff3fe9ce3a7da4..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H +++ /dev/null @@ -1,18 +0,0 @@ - fvMesh& mesh = solidRegions[i]; - solidThermo& thermo = thermos[i]; - const radiation::radiationModel& radiation = radiations[i]; - - tmp<volScalarField> trho = thermo.rho(); - const volScalarField& rho = trho(); - - tmp<volScalarField> tcp = thermo.Cp(); - const volScalarField& cp = tcp(); - - tmp<volScalarField> tkappa = thermo.kappa(); - //tmp<volSymmTensorField> tkappa = thermo.directionalkappa(); - const volScalarField& kappa = tkappa(); - - tmp<volScalarField> talpha = thermo.alpha(); - const volScalarField& alpha = talpha(); - - volScalarField& h = thermo.he(); diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/solveSolid.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/solveSolid.H index bbbe98ca9ce55a2093257d6bb51345013f1c3fbd..a0905d3e4fd9802351c800ae4b96ae52d70885c1 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/solveSolid.H +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/solveSolid.H @@ -3,7 +3,8 @@ { fvScalarMatrix hEqn ( - -fvm::laplacian(alpha, h) + - fvm::laplacian(betav*alpha, h, "laplacian(alpha,h)") + + sources(rho, h) ); hEqn.relax(); hEqn.solve(); diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/compressibleMultiRegionCourantNo.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/compressibleMultiRegionCourantNo.H index 313a11a9c99fa9a8a045524a25963d320c312bdb..fa5feefbb4beba6e440298d46723e06734d8f0c0 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/compressibleMultiRegionCourantNo.H +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/compressibleMultiRegionCourantNo.H @@ -14,7 +14,7 @@ CoNum ); } - +/* forAll (porousFluidRegions, porousI) { CoNum = max @@ -29,3 +29,4 @@ CoNum ); } +*/ \ No newline at end of file diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/UPorousFluidEqn.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/UPorousFluidEqn.H deleted file mode 100644 index 2de604e0b0d5971550c0a82566f20e10e4e10a61..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/UPorousFluidEqn.H +++ /dev/null @@ -1,24 +0,0 @@ - -// Solve the Momentum equation - tmp<fvVectorMatrix> porousUEqn - ( - fvm::ddt(porousRho, porousU) - + fvm::div(porousPhi, porousU) - + turbPorous.divDevRhoReff(porousU) - + porousSources(porousRho, porousU) - ); - - porousUEqn().relax(); - - volScalarField rAUPorous(1.0/porousUEqn().A()); - - if (momentumPredictor) - { - solve(porousUEqn() == -fvc::grad(porousP)); - } - else - { - porousU = rAUPorous*(porousUEqn().H() - fvc::grad(porousP)); - porousU.correctBoundaryConditions(); - } - diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/createPorousFluidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/createPorousFluidFields.H deleted file mode 100644 index 7880fe21ba90be820f519a440b8d91f70f49e83b..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/createPorousFluidFields.H +++ /dev/null @@ -1,147 +0,0 @@ - // Initialise porous field pointer lists - PtrList<rhoThermo> thermoPorous(porousFluidRegions.size()); - PtrList<volScalarField> rhoPorous(porousFluidRegions.size()); - PtrList<volVectorField> UPorous(porousFluidRegions.size()); - PtrList<surfaceScalarField> phiPorous(porousFluidRegions.size()); - PtrList<volScalarField> KPorous(porousFluidRegions.size()); - PtrList<volScalarField> dpdtPorous(fluidRegions.size()); - - PtrList<compressible::turbulenceModel> turbulencePorous - ( - porousFluidRegions.size() - ); - PtrList<volScalarField> pPorous(porousFluidRegions.size()); - - PtrList<IObasicSourceList> heatPorousSources - ( - porousFluidRegions.size() - ); - - forAll(porousFluidRegions, i) - { - Info<< "Reading fluid mesh thermophysical properties for porous " - << porousFluidRegions[i].name() << nl << endl; - - Info<< " Adding to thermoFluid porous\n" << endl; - - thermoPorous.set - ( - i, - rhoThermo::New(porousFluidRegions[i]).ptr() - ); - - Info<< " Adding to rhoPorous\n" << endl; - rhoPorous.set - ( - i, - new volScalarField - ( - IOobject - ( - "rho", - runTime.timeName(), - porousFluidRegions[i], - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - thermoPorous[i].rho() - ) - ); - - Info<< " Adding to UPorous\n" << endl; - UPorous.set - ( - i, - new volVectorField - ( - IOobject - ( - "U", - runTime.timeName(), - porousFluidRegions[i], - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - porousFluidRegions[i] - ) - ); - - Info<< " Adding to phiPorous\n" << endl; - phiPorous.set - ( - i, - new surfaceScalarField - ( - IOobject - ( - "phi", - runTime.timeName(), - porousFluidRegions[i], - IOobject::READ_IF_PRESENT, - IOobject::AUTO_WRITE - ), - linearInterpolate(rhoPorous[i]*UPorous[i]) - & porousFluidRegions[i].Sf() - ) - ); - - Info<< " Adding turbulence to porous\n" << endl; - turbulencePorous.set - ( - i, - compressible::turbulenceModel::New - ( - rhoPorous[i], - UPorous[i], - phiPorous[i], - thermoPorous[i] - ).ptr() - ); - - Info<< " Adding to KPorous\n" << endl; - KPorous.set - ( - i, - new volScalarField - ( - "KPorous", - 0.5*magSqr(UPorous[i]) - ) - ); - - Info<< " Adding to dpdtPorous\n" << endl; - dpdtPorous.set - ( - i, - new volScalarField - ( - "dpdtPorous", - fvc::ddt(thermoPorous[i].p()) - ) - ); - - pPorous.set - ( - i, - new volScalarField - ( - IOobject - ( - "p", - runTime.timeName(), - porousFluidRegions[i], - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - porousFluidRegions[i] - ) - ); - - heatPorousSources.set - ( - i, - new IObasicSourceList(porousFluidRegions[i]) - ); - } - - diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/createPorousFluidRegions.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/createPorousFluidRegions.H deleted file mode 100644 index a414d8a9724f85d9d29f85b8b0e43554763e9c04..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/createPorousFluidRegions.H +++ /dev/null @@ -1,25 +0,0 @@ - const wordList porousFluidNames(rp["porousFluid"]); - - PtrList<fvMesh> porousFluidRegions(porousFluidNames.size()); - - forAll (porousFluidNames, iPorous) - { - const word porousFluidName = porousFluidNames[iPorous]; - Info<< "Create porous fluid region " << porousFluidName - << nl << endl; - - porousFluidRegions.set - ( - iPorous, - new fvMesh - ( - IOobject - ( - porousFluidName, - runTime.timeName(), - runTime, - IOobject::MUST_READ - ) - ) - ); - } diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/hPorousFluidEqn.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/hPorousFluidEqn.H deleted file mode 100644 index 6bf056496697f28b3e4e44d36e651fb07ace74b8..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/hPorousFluidEqn.H +++ /dev/null @@ -1,21 +0,0 @@ -{ - fvScalarMatrix hPorousEqn - ( - fvm::ddt(porousRho, porousH) - + fvm::div(porousPhi, porousH) - - fvm::laplacian(turbPorous.alphaEff(), porousH) - == - porousdpdt - - (fvc::ddt(porousRho, porousK) + fvc::div(porousPhi, porousK)) - + porousSources(porousRho, porousH) - ); - - hPorousEqn.relax(); - hPorousEqn.solve(); - - porousThermo.correct(); - - Info<< "Min/max in the porous T:" - << min(porousThermo.T()).value() << ' ' - << max(porousThermo.T()).value() << endl; -} diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/pPorousFluidEqn.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/pPorousFluidEqn.H deleted file mode 100644 index 4257680be350d8ff36847bdec389acd5c246c04c..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/pPorousFluidEqn.H +++ /dev/null @@ -1,63 +0,0 @@ -porousRho = porousThermo.rho(); - -porousU = rAUPorous*porousUEqn().H(); - -if (nCorr <= 1) -{ - porousUEqn.clear(); -} - -porousPhi = - fvc::interpolate(porousRho)* - ( - (fvc::interpolate(porousU) & porousMesh.Sf()) - + fvc::ddtPhiCorr(rAUPorous, porousRho, porousU, porousPhi) - ); - -for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) -{ - // Pressure corrector - fvScalarMatrix pEqn - ( - fvm::ddt(porousPsi, porousP) - + fvc::div(porousPhi) - - fvm::laplacian(porousRho*rAUPorous, porousP) - ); - - pEqn.solve - ( - porousMesh.solver - ( - porousP.select - ( - oCorr == nOuterCorr-1 - && corr == nCorr-1 - && nonOrth == nNonOrthCorr - ) - ) - ); - - if (nonOrth == nNonOrthCorr) - { - porousPhi += pEqn.flux(); - } -} - -solve(fvm::ddt(porousRho) + fvc::div(porousPhi)); - -// Explicitly relax pressure for momentum corrector -porousP.relax(); - -// Recalculate density from the relaxed pressure -porousRho = porousThermo.rho(); - - -porousU -= rAUPorous*fvc::grad(porousP); -porousU.correctBoundaryConditions(); -porousK = 0.5*magSqr(porousU); - -// Update pressure time derivative if needed -if (porousThermo.dpdt()) -{ - porousdpdt = fvc::ddt(porousP); -} diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/readPorousFluidRegionPIMPLEControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/readPorousFluidRegionPIMPLEControls.H deleted file mode 100644 index 395ee383eb2613a95b8cddd9332466933edf21c5..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/readPorousFluidRegionPIMPLEControls.H +++ /dev/null @@ -1,11 +0,0 @@ - const dictionary& pimple = porousMesh.solutionDict().subDict("PIMPLE"); - - const int nCorr = - pimple.lookupOrDefault<int>("nCorrectors", 1); - - const int nNonOrthCorr = - pimple.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0); - - const bool momentumPredictor = - pimple.lookupOrDefault("momentumPredictor", true); - diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/setPorousFluidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/setPorousFluidFields.H deleted file mode 100644 index 36b7b231ffbae7d17037a82a3ec9f700d44730e9..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/setPorousFluidFields.H +++ /dev/null @@ -1,17 +0,0 @@ - fvMesh& porousMesh = porousFluidRegions[i]; - - rhoThermo& porousThermo = thermoPorous[i]; - volScalarField& porousRho = rhoPorous[i]; - - volVectorField& porousU = UPorous[i]; - surfaceScalarField& porousPhi = phiPorous[i]; - - compressible::turbulenceModel& turbPorous = turbulencePorous[i]; - volScalarField& porousK = KPorous[i]; - volScalarField& porousdpdt = dpdtPorous[i]; - - volScalarField& porousP = porousThermo.p(); - const volScalarField& porousPsi = porousThermo.psi(); - volScalarField& porousH = porousThermo.he(); - - IObasicSourceList& porousSources = heatPorousSources[i]; diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/solvePorousFluid.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/solvePorousFluid.H deleted file mode 100644 index d0f9168b86e22958717686a08eb5fc59007853fd..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousFluid/solvePorousFluid.H +++ /dev/null @@ -1,28 +0,0 @@ -if (finalIter) -{ - porousMesh.data::add("finalIteration", true); -} - -if (oCorr == 0) -{ - solve(fvm::ddt(porousRho) + fvc::div(porousPhi)); -} - -#include "UPorousFluidEqn.H" - -#include "hPorousFluidEqn.H" - -// --- PISO loop -for (int corr=0; corr<nCorr; corr++) -{ - #include "pPorousFluidEqn.H" -} - -turbPorous.correct(); - -porousRho = porousThermo.rho(); - -if (finalIter) -{ - porousMesh.data::remove("finalIteration"); -} diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/createPorousSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/createPorousSolidFields.H deleted file mode 100644 index ab7ed2493565f77f0f262485bd8bbad4f759e122..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/createPorousSolidFields.H +++ /dev/null @@ -1,43 +0,0 @@ - // Initialise solid field pointer lists - PtrList<solidThermo> porousSolidThermos(porousSolidRegions.size()); - PtrList<IObasicSourceList> solidHeatSources(porousSolidRegions.size()); - PtrList<volScalarField> betavSolid(porousSolidRegions.size()); - - // Populate solid field pointer lists - forAll(porousSolidRegions, i) - { - Info<< "*** Reading porous solid mesh thermophysical " - << "properties for region " - << porousSolidRegions[i].name() << nl << endl; - - Info<< " Adding to thermos\n" << endl; - porousSolidThermos.set - ( - i, - solidThermo::New(porousSolidRegions[i]) - ); - Info<< " Adding sources\n" << endl; - solidHeatSources.set - ( - i, - new IObasicSourceList(porousSolidRegions[i]) - ); - - Info<< " Adding to betavSolid\n" << endl; - betavSolid.set - ( - i, - new volScalarField - ( - IOobject - ( - "betavSolid", - runTime.timeName(), - porousSolidRegions[i], - IOobject::MUST_READ, - IOobject::AUTO_WRITE - ), - porousSolidRegions[i] - ) - ); - } diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/createPorousSolidMeshes.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/createPorousSolidMeshes.H deleted file mode 100644 index fa61f55af4f0ca9f1a4a2949a241090fc9e4f872..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/createPorousSolidMeshes.H +++ /dev/null @@ -1,24 +0,0 @@ - const wordList porousSolidNames(rp["porousSolid"]); - - PtrList<fvMesh> porousSolidRegions(porousSolidNames.size()); - - forAll(porousSolidNames, i) - { - Info<< "Create solid mesh for region " << porousSolidNames[i] - << " for time = " << runTime.timeName() << nl << endl; - - porousSolidRegions.set - ( - i, - new fvMesh - ( - IOobject - ( - porousSolidNames[i], - runTime.timeName(), - runTime, - IOobject::MUST_READ - ) - ) - ); - } diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/readPorousSolidMultiRegionPIMPLEControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/readPorousSolidMultiRegionPIMPLEControls.H deleted file mode 100644 index e23883c5fae11f298e0459feaacacc4c73af8dbe..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/readPorousSolidMultiRegionPIMPLEControls.H +++ /dev/null @@ -1,4 +0,0 @@ - const dictionary& pimple = mesh.solutionDict().subDict("PIMPLE"); - - int nNonOrthCorr = - pimple.lookupOrDefault<int>("nNonOrthogonalCorrectors", 0); diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/setPorousRegionSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/setPorousRegionSolidFields.H deleted file mode 100644 index 6a61baae02983ef7743404e170c04604d800172a..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/setPorousRegionSolidFields.H +++ /dev/null @@ -1,26 +0,0 @@ - fvMesh& mesh = porousSolidRegions[i]; - - solidThermo& thermo = porousSolidThermos[i]; - const volScalarField& betav = betavSolid[i]; - - tmp<volScalarField> trho = thermo.rho(); - const volScalarField& rho = trho(); - - tmp<volScalarField> tcp = thermo.Cp(); - const volScalarField& cp = tcp(); - - tmp<volScalarField> tkappa = thermo.kappa(); - //tmp<volSymmTensorField> tkappa = thermo.directionalKappa()*betav; - - const volScalarField& kappa = tkappa(); - //const volSymmTensorField& K = tK(); - - //tmp<volScalarField> trhoCp = cp*rho; - //const volScalarField& rhoCp = trhoCp(); - - tmp<volScalarField> talpha = thermo.alpha(); - const volScalarField& alpha = talpha(); - - volScalarField& h = thermo.he(); - - IObasicSourceList& sources = solidHeatSources[i]; diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/solidPorousRegionDiffusionNo.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/solidPorousRegionDiffusionNo.H deleted file mode 100644 index 77dc6f04bf44ba748359c2f8bf3267307416b650..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/solidPorousRegionDiffusionNo.H +++ /dev/null @@ -1,18 +0,0 @@ - scalar DiNum = -GREAT; - - forAll(solidRegions, i) - { -# include "setRegionSolidFields.H" - - DiNum = max - ( - solidRegionDiffNo - ( - solidRegions[i], - runTime, - rho*cp, - K - ), - DiNum - ); - } diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/solvePorousSolid.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/solvePorousSolid.H deleted file mode 100644 index 4a0b390555fa8ce29fb619e14bd011eb804e9cda..0000000000000000000000000000000000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/porousSolid/solvePorousSolid.H +++ /dev/null @@ -1,28 +0,0 @@ -if (finalIter) -{ - mesh.data::add("finalIteration", true); -} - -{ - for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) - { - tmp<fvScalarMatrix> hEqn - ( - fvm::ddt(betav*rho, h) - - fvm::laplacian(betav*alpha, h, "laplacian(alpha,h)") - + sources(rho, h) - ); - - hEqn().relax(); - hEqn().solve(mesh.solver(h.select(finalIter))); - } -} - -thermo.correct(); - -Info<< "Min/max T:" << min(thermo.T()) << ' ' << max(thermo.T()) << endl; - -if (finalIter) -{ - mesh.data::remove("finalIteration"); -} diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H index 2a543a4d6f121f078644362952aca39fe70ac6ea..8edfe413bbb0d5f62af0361915b7d565871d1c10 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H @@ -1,6 +1,8 @@ // Initialise solid field pointer lists PtrList<solidThermo> thermos(solidRegions.size()); PtrList<radiation::radiationModel> radiations(solidRegions.size()); + PtrList<IObasicSourceList> solidHeatSources(solidRegions.size()); + PtrList<volScalarField> betavSolid(solidRegions.size()); // Populate solid field pointer lists forAll(solidRegions, i) @@ -13,4 +15,49 @@ Info<< " Adding to radiations\n" << endl; radiations.set(i, radiation::radiationModel::New(thermos[i].T())); + + Info<< " Adding sources\n" << endl; + solidHeatSources.set + ( + i, + new IObasicSourceList(solidRegions[i]) + ); + + IOobject betavSolidIO + ( + "betavSolid", + runTime.timeName(), + solidRegions[i], + IOobject::MUST_READ, + IOobject::AUTO_WRITE + ); + + if (betavSolidIO.headerOk()) + { + betavSolid.set + ( + i, + new volScalarField(betavSolidIO, solidRegions[i]) + ); + } + else + { + betavSolid.set + ( + i, + new volScalarField + ( + IOobject + ( + "betavSolid", + runTime.timeName(), + solidRegions[i], + IOobject::NO_READ, + IOobject::NO_WRITE + ), + solidRegions[i], + dimensionedScalar("1", dimless, scalar(1.0)) + ) + ); + } } diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/setRegionSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/setRegionSolidFields.H index 788383e5ecbe6d6ddb897eb0c53a04217a482d40..7e95615b14e17b0aa8eca100d6e7b412efb73235 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/setRegionSolidFields.H +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/setRegionSolidFields.H @@ -14,3 +14,7 @@ const volScalarField& kappa = tkappa(); volScalarField& h = thermo.he(); + + const volScalarField& betav = betavSolid[i]; + + IObasicSourceList& sources = solidHeatSources[i]; diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solveSolid.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solveSolid.H index 007be97b891219d9bfe836adff424deb56e9419c..a04750cf17ac37a98c582ff3fd3a5ea8a103944e 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solveSolid.H +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solveSolid.H @@ -8,8 +8,9 @@ if (finalIter) { tmp<fvScalarMatrix> hEqn ( - fvm::ddt(rho, h) - - fvm::laplacian(alpha, h) + fvm::ddt(betav*rho, h) + - fvm::laplacian(betav*alpha, h, "laplacian(alpha,h)") + + sources(rho, h) ); hEqn().relax(); hEqn().solve(mesh.solver(h.select(finalIter))); diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/regionProperties index dc0d1417d50c1d65060dbee01ac954166a99e5d3..8e1fe39d2c7980ae17ad81c04de4f76700970b79 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/regionProperties @@ -19,8 +19,6 @@ regions ( fluid (bottomAir topAir) solid (heater leftSolid rightSolid) - porousFluid () - porousSolid () ); // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionLiquidHeater/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionLiquidHeater/constant/regionProperties index d76684c2cddba17a9d809b86225e36a95258dae3..59cff17f3fdb426704d79293e125be0164340a18 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionLiquidHeater/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionLiquidHeater/constant/regionProperties @@ -19,8 +19,7 @@ regions ( fluid (bottomWater topAir) solid (heater leftSolid rightSolid) - porousFluid () - porousSolid () + ); // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/regionProperties index 9ca5dc857c35bb5b70fc26e27f990a4c6c77e438..1f1e965d524a004e72873a75a16048cd19ae6029 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/regionProperties @@ -19,8 +19,6 @@ regions ( fluid (bottomAir topAir) solid (heater leftSolid rightSolid) - porousFluid () - porousSolid () ); diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/regionProperties index dc0d1417d50c1d65060dbee01ac954166a99e5d3..8e1fe39d2c7980ae17ad81c04de4f76700970b79 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/regionProperties @@ -19,8 +19,6 @@ regions ( fluid (bottomAir topAir) solid (heater leftSolid rightSolid) - porousFluid () - porousSolid () ); // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/regionProperties b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/regionProperties index dc0d1417d50c1d65060dbee01ac954166a99e5d3..8e1fe39d2c7980ae17ad81c04de4f76700970b79 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/regionProperties +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/constant/regionProperties @@ -19,8 +19,6 @@ regions ( fluid (bottomAir topAir) solid (heater leftSolid rightSolid) - porousFluid () - porousSolid () ); // ************************************************************************* //