diff --git a/applications/solvers/combustion/fireFoam/UEqn.H b/applications/solvers/combustion/fireFoam/UEqn.H index 4a2d03490d..a77c262831 100644 --- a/applications/solvers/combustion/fireFoam/UEqn.H +++ b/applications/solvers/combustion/fireFoam/UEqn.H @@ -13,7 +13,9 @@ solve == fvc::reconstruct ( - fvc::interpolate(rho)*(g & mesh.Sf()) - - fvc::snGrad(p)*mesh.magSf() + ( + - ghf*fvc::snGrad(rho) + - fvc::snGrad(p_rgh) + )*mesh.magSf() ) ); diff --git a/applications/solvers/combustion/fireFoam/combustionModels/Make/files b/applications/solvers/combustion/fireFoam/combustionModels/Make/files index 86696b0709..5b1262b70d 100644 --- a/applications/solvers/combustion/fireFoam/combustionModels/Make/files +++ b/applications/solvers/combustion/fireFoam/combustionModels/Make/files @@ -1,5 +1,5 @@ combustionModel/combustionModel.C -combustionModel/combustionModelNew.C +combustionModel/newCombustionModel.C infinitelyFastChemistry/infinitelyFastChemistry.C diff --git a/applications/solvers/combustion/fireFoam/combustionModels/combustionModel/combustionModelNew.C b/applications/solvers/combustion/fireFoam/combustionModels/combustionModel/newCombustionModel.C similarity index 77% rename from applications/solvers/combustion/fireFoam/combustionModels/combustionModel/combustionModelNew.C rename to applications/solvers/combustion/fireFoam/combustionModels/combustionModel/newCombustionModel.C index e23386589c..62781b0fdb 100644 --- a/applications/solvers/combustion/fireFoam/combustionModels/combustionModel/combustionModelNew.C +++ b/applications/solvers/combustion/fireFoam/combustionModels/combustionModel/newCombustionModel.C @@ -29,19 +29,22 @@ License Foam::autoPtr Foam::combustionModel::New ( - const dictionary& propDict, + const dictionary& combustionProperties, const hsCombustionThermo& thermo, const compressible::turbulenceModel& turbulence, const surfaceScalarField& phi, const volScalarField& rho ) { - const word modelType(propDict.lookup("combustionModel")); + word combustionModelTypeName = combustionProperties.lookup + ( + "combustionModel" + ); - Info<< "Selecting combustion model " << modelType << endl; + Info<< "Selecting combustion model " << combustionModelTypeName << endl; dictionaryConstructorTable::iterator cstrIter = - dictionaryConstructorTablePtr_->find(modelType); + dictionaryConstructorTablePtr_->find(combustionModelTypeName); if (cstrIter == dictionaryConstructorTablePtr_->end()) { @@ -49,14 +52,14 @@ Foam::autoPtr Foam::combustionModel::New ( "combustionModel::New" ) << "Unknown combustionModel type " - << modelType << nl << nl - << "Valid combustionModels are : " << endl - << dictionaryConstructorTablePtr_->toc() + << combustionModelTypeName << endl << endl + << "Valid combustionModels are : " << endl + << dictionaryConstructorTablePtr_->sortedToc() << exit(FatalError); } return autoPtr - (cstrIter()(propDict, thermo, turbulence, phi, rho)); + (cstrIter()(combustionProperties, thermo, turbulence, phi, rho)); } diff --git a/applications/solvers/combustion/fireFoam/combustionModels/infinitelyFastChemistry/infinitelyFastChemistry.H b/applications/solvers/combustion/fireFoam/combustionModels/infinitelyFastChemistry/infinitelyFastChemistry.H index 851f119feb..53832f21b9 100644 --- a/applications/solvers/combustion/fireFoam/combustionModels/infinitelyFastChemistry/infinitelyFastChemistry.H +++ b/applications/solvers/combustion/fireFoam/combustionModels/infinitelyFastChemistry/infinitelyFastChemistry.H @@ -88,8 +88,9 @@ public: ); - //- Destructor - virtual ~infinitelyFastChemistry(); + // Destructor + + virtual ~infinitelyFastChemistry(); // Member Functions diff --git a/applications/solvers/combustion/fireFoam/combustionModels/noCombustion/noCombustion.H b/applications/solvers/combustion/fireFoam/combustionModels/noCombustion/noCombustion.H index 9e15f0d300..b3f8bb225e 100644 --- a/applications/solvers/combustion/fireFoam/combustionModels/noCombustion/noCombustion.H +++ b/applications/solvers/combustion/fireFoam/combustionModels/noCombustion/noCombustion.H @@ -83,8 +83,9 @@ public: ); - //- Destructor - virtual ~noCombustion(); + // Destructor + + virtual ~noCombustion(); // Member Functions diff --git a/applications/solvers/combustion/fireFoam/createFields.H b/applications/solvers/combustion/fireFoam/createFields.H index 9a6274bb1a..6a1a40b777 100644 --- a/applications/solvers/combustion/fireFoam/createFields.H +++ b/applications/solvers/combustion/fireFoam/createFields.H @@ -35,6 +35,7 @@ const volScalarField& psi = thermo.psi(); volScalarField& ft = composition.Y("ft"); volScalarField& fu = composition.Y("fu"); + Info<< "Reading field U\n" << endl; volVectorField U @@ -73,7 +74,7 @@ IOdictionary combustionProperties Info<< "Creating combustion model\n" << endl; autoPtr combustion ( - combustionModel::New + combustionModel::combustionModel::New ( combustionProperties, thermo, @@ -83,6 +84,29 @@ autoPtr combustion ) ); + +Info<< "Calculating field g.h\n" << endl; +volScalarField gh("gh", g & mesh.C()); +surfaceScalarField ghf("gh", g & mesh.Cf()); + +Info<< "Reading field p_rgh\n" << endl; +volScalarField p_rgh +( + IOobject + ( + "p_rgh", + runTime.timeName(), + mesh, + IOobject::MUST_READ, + IOobject::AUTO_WRITE + ), + mesh +); + +// Force p_rgh to be consistent with p +p_rgh = p - rho*gh; + + volScalarField dQ ( IOobject @@ -103,15 +127,6 @@ volScalarField DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); -Info<< "Calculating field g.h\n" << endl; -volScalarField gh("gh", g & mesh.C()); - -surfaceScalarField ghf("gh", g & mesh.Cf()); - -p += rho*gh; - -thermo.correct(); - dimensionedScalar initialMass = fvc::domainIntegrate(rho); diff --git a/applications/solvers/combustion/fireFoam/pEqn.H b/applications/solvers/combustion/fireFoam/pEqn.H index 8d1ed0d9f8..b31a7c6636 100644 --- a/applications/solvers/combustion/fireFoam/pEqn.H +++ b/applications/solvers/combustion/fireFoam/pEqn.H @@ -1,5 +1,3 @@ -bool closedVolume = false; - rho = thermo.rho(); volScalarField rUA = 1.0/UEqn.A(); @@ -15,43 +13,41 @@ surfaceScalarField phiU ) ); -phi = phiU + rhorUAf*fvc::interpolate(rho)*(g & mesh.Sf()); +phi = phiU - rhorUAf*ghf*fvc::snGrad(rho)*mesh.magSf(); for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) { - surfaceScalarField rhorUAf = fvc::interpolate(rho*rUA); + surfaceScalarField rhorUAf = fvc::interpolate(rho*rUA); - fvScalarMatrix pEqn + fvScalarMatrix p_rghEqn + ( + fvm::ddt(psi, p_rgh) + fvc::ddt(psi, rho)*gh + + fvc::div(phi) + - fvm::laplacian(rhorUAf, p_rgh) + ); + + p_rghEqn.solve + ( + mesh.solver ( - fvm::ddt(psi,p) - + fvc::div(phi) - - fvm::laplacian(rhorUAf, p) - ); - - closedVolume = p.needReference(); - - pEqn.solve - ( - mesh.solver + p_rgh.select ( - p.select ( - ( - finalIter - && corr == nCorr-1 - && nonOrth == nNonOrthCorr - ) + finalIter + && corr == nCorr-1 + && nonOrth == nNonOrthCorr ) ) - ); + ) + ); - if (nonOrth == nNonOrthCorr) - { - phi += pEqn.flux(); - } + if (nonOrth == nNonOrthCorr) + { + phi += p_rghEqn.flux(); + } } -DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); +p = p_rgh + rho*gh; #include "rhoEqn.H" #include "compressibleContinuityErrs.H" @@ -59,12 +55,4 @@ DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); U += rUA*fvc::reconstruct((phi - phiU)/rhorUAf); U.correctBoundaryConditions(); -// For closed-volume cases adjust the pressure and density levels -// to obey overall mass continuity -if (closedVolume) -{ - p += - (initialMass - fvc::domainIntegrate(thermo.psi()*p)) - /fvc::domainIntegrate(thermo.psi()); - rho = thermo.rho(); -} +DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/IDefault b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/IDefault index 8b93ee55fc..94f365296e 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/IDefault +++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/IDefault @@ -24,7 +24,7 @@ boundaryField { type greyDiffusiveRadiation; T T; - emissivity 1.0 + emissivity 1.0; value uniform 0; } } diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p index 58e445ea2d..a18b7d7bc5 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p +++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p @@ -11,7 +11,7 @@ FoamFile format ascii; class volScalarField; location "0"; - object p; + object p_rgh; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -23,26 +23,23 @@ boundaryField { outlet { - type buoyantPressure; - value uniform 101325; + type calculated; + value $internalField; } sides { - type uniformDensityHydrostaticPressure; - rho 1.2; - pRefValue 101325; - pRefPoint (0 0 0); + type calculated; value $internalField; } base { - type buoyantPressure; + type calculated; value $internalField; } inlet { - type buoyantPressure; + type calculated; value $internalField; } frontBack diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p_rgh b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p_rgh new file mode 100644 index 0000000000..1e165b9bbf --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/0/p_rgh @@ -0,0 +1,52 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object p_rgh; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [1 -1 -2 0 0 0 0]; + +internalField uniform 101325; + +boundaryField +{ + outlet + { + type buoyantPressure; + value uniform 101325; + } + + sides + { + type fixedValue; + value $internalField; + } + base + { + type buoyantPressure; + value $internalField; + } + inlet + { + type buoyantPressure; + value $internalField; + } + frontBack + { + type empty; + } +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/polyMesh/boundary b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/polyMesh/boundary index c056cb28ee..3adde43e11 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/polyMesh/boundary +++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/constant/polyMesh/boundary @@ -15,31 +15,37 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -4 +5 ( base { type patch; - nFaces 150; + nFaces 134; startFace 44700; } outlet { type patch; nFaces 150; - startFace 44850; + startFace 44834; } sides { type patch; nFaces 300; - startFace 45000; + startFace 44984; } frontAndBack { type empty; nFaces 45000; - startFace 45300; + startFace 45284; + } + inlet + { + type patch; + nFaces 16; + startFace 90284; } ) diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/controlDict b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/controlDict index 8f07c5184f..43eca8296c 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/controlDict +++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/controlDict @@ -36,7 +36,7 @@ writeFormat ascii; writePrecision 6; -writeCompression off; +writeCompression uncompressed; timeFormat general; @@ -44,7 +44,7 @@ timePrecision 6; graphFormat raw; -runTimeModifiable true; +runTimeModifiable yes; adjustTimeStep yes; diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSchemes b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSchemes index 870100d127..b52f49447a 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSchemes +++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSchemes @@ -44,16 +44,7 @@ divSchemes laplacianSchemes { - default none; - laplacian(muEff,U) Gauss linear corrected; - laplacian(DkEff,k) Gauss linear corrected; - laplacian(DBEff,B) Gauss linear corrected; - laplacian(alphaEff,hs) Gauss linear uncorrected; - laplacian(alphaEff,fu) Gauss linear uncorrected; - laplacian(alphaEff,ft) Gauss linear uncorrected; - laplacian((((rho*(1|A(U)))*rho)*gh)) Gauss linear uncorrected; - laplacian(interpolate((rho*(1|A(U)))),p) Gauss linear uncorrected; - laplacian(gammaRad,G) Gauss linear corrected; + default Gauss linear uncorrected; } interpolationSchemes @@ -69,7 +60,7 @@ snGradSchemes fluxRequired { default no; - p; + p_rgh; } diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution index e97f1de618..8c855503fc 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution +++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/fvSolution @@ -33,7 +33,7 @@ solvers relTol 0; }; - p + p_rgh { solver GAMG; tolerance 1e-7; @@ -45,9 +45,9 @@ solvers mergeLevels 1; }; - pFinal + p_rghFinal { - $p; + $p_rgh; tolerance 1e-7; relTol 0; }; diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/G b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/G new file mode 100644 index 0000000000..c0b1c57ad9 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/G @@ -0,0 +1,32 @@ +/*--------------------------------*- 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 volScalarField; + object G; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [1 0 -3 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + ".*" + { + type MarshakRadiation; + T T; + emissivity 1; + value uniform 0; + } +} + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/IDefault b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/IDefault new file mode 100644 index 0000000000..32b03c16d5 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/IDefault @@ -0,0 +1,32 @@ +/*--------------------------------*- 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 volScalarField; + object IDefault; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [1 0 -3 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + ".*" + { + type greyDiffusiveRadiation; + T T; + emissivity 1.0; + value uniform 0; + } +} + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/T b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/T new file mode 100644 index 0000000000..7d8327178d --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/T @@ -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 volScalarField; + location "0"; + object T; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 1 0 0 0]; + +internalField uniform 300; + +boundaryField +{ + outlet + { + type inletOutlet; + inletValue uniform 300; + value uniform 300; + } + sides + { + type inletOutlet; + inletValue uniform 300; + value uniform 300; + } + base + { + type zeroGradient; + } + inlet + { + type fixedValue; + value uniform 300; + } + +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/U b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/U new file mode 100644 index 0000000000..79d4bcf728 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/U @@ -0,0 +1,52 @@ +/*--------------------------------*- 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 volVectorField; + location "0"; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform (0 0 0); + +boundaryField +{ + outlet + { + + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + + } + sides + { + type pressureInletOutletVelocity; + outletValue uniform (0 0 0); + value uniform (0 0 0); + } + base + { + type fixedValue; + value uniform (0 0 0); + } + inlet + { + type fixedValue; + value uniform (0 0.05 0); + } + +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/alphaSgs b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/alphaSgs new file mode 100644 index 0000000000..ed7509d9f4 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/alphaSgs @@ -0,0 +1,44 @@ +/*--------------------------------*- 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 volScalarField; + location "0"; + object alphaSgs; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [1 -1 -1 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + outlet + { + type zeroGradient; + } + sides + { + type zeroGradient; + } + base + { + type zeroGradient; + } + inlet + { + type zeroGradient; + } + +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/b b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/b new file mode 100644 index 0000000000..57a6d5ab27 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/b @@ -0,0 +1,44 @@ +/*--------------------------------*- 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 volScalarField; + location "0"; + object b; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + outlet + { + type zeroGradient; + } + sides + { + type zeroGradient; + } + base + { + type zeroGradient; + } + inlet + { + type zeroGradient; + } + +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/ft b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/ft new file mode 100644 index 0000000000..1dc73a2624 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/ft @@ -0,0 +1,48 @@ +/*--------------------------------*- 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 volScalarField; + location "0"; + object ft; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + outlet + { + type inletOutlet; + inletValue uniform 0; + value uniform 0; + } + sides + { + type inletOutlet; + inletValue uniform 0; + value uniform 0; + } + base + { + type zeroGradient; + } + inlet + { + type fixedValue; + value uniform 1.0; + } +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/fu b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/fu new file mode 100644 index 0000000000..0ca8b79198 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/fu @@ -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 volScalarField; + location "0"; + object fu; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + outlet + { + type inletOutlet; + inletValue uniform 0; + value uniform 0; + } + sides + { + type inletOutlet; + inletValue uniform 0; + value uniform 0; + } + base + { + type zeroGradient; + } + inlet + { + type fixedValue; + value uniform 1.0; + } + +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/k b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/k new file mode 100644 index 0000000000..89387dba53 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/k @@ -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 volScalarField; + location "0"; + object k; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform 1e-4; + +boundaryField +{ + outlet + { + type inletOutlet; + inletValue uniform 1e-4; + value uniform 1e-4; + } + sides + { + type inletOutlet; + inletValue uniform 1e-4; + value uniform 1e-4; + } + base + { + type zeroGradient; + } + inlet + { + type fixedValue; + value uniform 1e-4; + } + +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/muSgs b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/muSgs new file mode 100644 index 0000000000..d94861f4ba --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/muSgs @@ -0,0 +1,43 @@ +/*--------------------------------*- 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 volScalarField; + location "0"; + object muSgs; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [1 -1 -1 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + outlet + { + type zeroGradient; + } + sides + { + type zeroGradient; + } + base + { + type zeroGradient; + } + inlet + { + type zeroGradient; + } +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/p b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/p new file mode 100644 index 0000000000..f403fa62a9 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/p @@ -0,0 +1,48 @@ +/*--------------------------------*- 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 volScalarField; + location "0"; + object p; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [1 -1 -2 0 0 0 0]; + +internalField uniform 101325; + +boundaryField +{ + outlet + { + type calculated; + value $internalField; + } + + sides + { + type calculated; + value $internalField; + } + base + { + type calculated; + value $internalField; + } + inlet + { + type calculated; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/p_rgh b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/p_rgh new file mode 100644 index 0000000000..47b78e4c87 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/0/p_rgh @@ -0,0 +1,48 @@ +/*--------------------------------*- 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 volScalarField; + location "0"; + object p_rgh; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [1 -1 -2 0 0 0 0]; + +internalField uniform 101325; + +boundaryField +{ + outlet + { + type buoyantPressure; + value $internalField; + } + + sides + { + type fixedValue; + value $internalField; + } + base + { + type buoyantPressure; + value $internalField; + } + inlet + { + type buoyantPressure; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/Allrun b/tutorials/combustion/fireFoam/les/smallPoolFire3D/Allrun new file mode 100755 index 0000000000..9ea9e89ae6 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/Allrun @@ -0,0 +1,17 @@ +#!/bin/sh + +# Source tutorial run functions +. $WM_PROJECT_DIR/bin/tools/RunFunctions + +# Set application name +application="fireFoam" + +runApplication blockMesh +runApplication setSet -batch makeFaceSet.setSet +runApplication createPatch -overwrite +runApplication decomposePar -force + +# Run +runParallel $application 4 + +# ----------------------------------------------------------------------------- diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/LESProperties b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/LESProperties new file mode 100644 index 0000000000..958b0085f8 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/LESProperties @@ -0,0 +1,84 @@ +/*--------------------------------*- 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 binary; + class dictionary; + location "constant"; + object LESProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +LESModel oneEqEddy; + +delta cubeRootVol; + +turbulence on; + +printCoeffs on; + + +cubeRootVolCoeffs +{ + deltaCoeff 1; +} + +PrandtlCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + maxDeltaRatio 1.1; + } + Cdelta 0.158; +} + +vanDriestCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + maxDeltaRatio 1.1; + } + Aplus 26; + Cdelta 0.158; +} + +smoothCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + maxDeltaRatio 1.1; +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/SpeciesTable b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/SpeciesTable new file mode 100644 index 0000000000..b4b0eee712 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/SpeciesTable @@ -0,0 +1,491 @@ +/*--------------------------------*- 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 SpeciesTable; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +fields +1 +( + +{ + name ft; + min 0; + max 1; + N 100; +} + +) +; +output +5 +( + +{ + name CH4; +} + + +{ + name CO2; +} + + +{ + name H2O; +} + + +{ + name CO; +} + + +{ + name soot; +} + +) +; +values +6 +( + +101 +( +0.001 +0.011 +0.021 +0.031 +0.041 +0.051 +0.061 +0.071 +0.081 +0.091 +0.101 +0.111 +0.121 +0.131 +0.141 +0.151 +0.161 +0.171 +0.181 +0.191 +0.201 +0.211 +0.221 +0.231 +0.241 +0.251 +0.261 +0.271 +0.281 +0.291 +0.301 +0.311 +0.321 +0.331 +0.341 +0.351 +0.361 +0.371 +0.381 +0.391 +0.401 +0.411 +0.421 +0.431 +0.441 +0.451 +0.461 +0.471 +0.481 +0.491 +0.501 +0.511 +0.521 +0.531 +0.541 +0.551 +0.561 +0.571 +0.581 +0.591 +0.601 +0.611 +0.621 +0.631 +0.641 +0.651 +0.661 +0.671 +0.681 +0.691 +0.701 +0.711 +0.721 +0.731 +0.741 +0.751 +0.761 +0.771 +0.781 +0.791 +0.801 +0.811 +0.821 +0.831 +0.841 +0.851 +0.861 +0.871 +0.881 +0.891 +0.901 +0.911 +0.921 +0.931 +0.941 +0.951 +0.961 +0.971 +0.981 +0.991 +0.999 +) + + +101 +( +0 +0 +0 +0 +0 +0 +0.0105883 +0.0285208 +0.0461843 +0.0635849 +0.0807284 +0.0976204 +0.114266 +0.130672 +0.146842 +0.162782 +0.178496 +0.193989 +0.209266 +0.224332 +0.23919 +0.253845 +0.268301 +0.282563 +0.296633 +0.310517 +0.324216 +0.337736 +0.35108 +0.364251 +0.377252 +0.390087 +0.402759 +0.415271 +0.427625 +0.439826 +0.451876 +0.463777 +0.475532 +0.487144 +0.498616 +0.50995 +0.521148 +0.532214 +0.543149 +0.553955 +0.564635 +0.575191 +0.585626 +0.595941 +0.606138 +0.61622 +0.626187 +0.636044 +0.64579 +0.655428 +0.66496 +0.674387 +0.683712 +0.692935 +0.702059 +0.711085 +0.720014 +0.728849 +0.73759 +0.74624 +0.754799 +0.763269 +0.771652 +0.779948 +0.788159 +0.796287 +0.804332 +0.812297 +0.820181 +0.827987 +0.835715 +0.843367 +0.850943 +0.858445 +0.865875 +0.873232 +0.880518 +0.887735 +0.894882 +0.901961 +0.908974 +0.91592 +0.922802 +0.929619 +0.936373 +0.943064 +0.949694 +0.956263 +0.962772 +0.969222 +0.975614 +0.981948 +0.988226 +0.994448 +0.999385 +) + + +101 +( +0.00200328 +0.0213922 +0.0396804 +0.0569589 +0.0733092 +0.088804 +0.0940165 +0.0923125 +0.0906341 +0.0889806 +0.0873516 +0.0857465 +0.0841647 +0.0826058 +0.0810693 +0.0795547 +0.0780615 +0.0765893 +0.0751376 +0.073706 +0.0722942 +0.0709016 +0.0695279 +0.0681728 +0.0668357 +0.0655165 +0.0642147 +0.06293 +0.0616621 +0.0604105 +0.0591751 +0.0579555 +0.0567514 +0.0555625 +0.0543885 +0.0532292 +0.0520842 +0.0509534 +0.0498363 +0.0487329 +0.0476428 +0.0465658 +0.0455017 +0.0444503 +0.0434112 +0.0423844 +0.0413695 +0.0403664 +0.0393749 +0.0383948 +0.0374258 +0.0364678 +0.0355206 +0.0345841 +0.033658 +0.0327421 +0.0318364 +0.0309406 +0.0300546 +0.0291781 +0.0283112 +0.0274535 +0.026605 +0.0257655 +0.0249349 +0.024113 +0.0232997 +0.0224948 +0.0216983 +0.0209099 +0.0201297 +0.0193573 +0.0185928 +0.0178361 +0.0170869 +0.0163452 +0.0156108 +0.0148837 +0.0141638 +0.0134509 +0.0127449 +0.0120458 +0.0113535 +0.0106678 +0.00998859 +0.00931588 +0.00864953 +0.00798947 +0.00733558 +0.0066878 +0.00604604 +0.00541021 +0.00478022 +0.00415601 +0.00353749 +0.00292458 +0.00231721 +0.00171531 +0.00111879 +0.000527591 +5.8413e-05 +) + + +101 +( +0.00400655 +0.0427844 +0.0793607 +0.113918 +0.146618 +0.177608 +0.188033 +0.184625 +0.181268 +0.177961 +0.174703 +0.171493 +0.168329 +0.165212 +0.162139 +0.159109 +0.156123 +0.153179 +0.150275 +0.147412 +0.144588 +0.141803 +0.139056 +0.136346 +0.133671 +0.131033 +0.128429 +0.12586 +0.123324 +0.120821 +0.11835 +0.115911 +0.113503 +0.111125 +0.108777 +0.106458 +0.104168 +0.101907 +0.0996727 +0.0974658 +0.0952856 +0.0931317 +0.0910035 +0.0889006 +0.0868225 +0.0847688 +0.082739 +0.0807328 +0.0787498 +0.0767895 +0.0748516 +0.0729356 +0.0710413 +0.0691682 +0.067316 +0.0654843 +0.0636728 +0.0618812 +0.0601091 +0.0583563 +0.0566223 +0.054907 +0.05321 +0.051531 +0.0498697 +0.0482259 +0.0465993 +0.0449896 +0.0433965 +0.0418198 +0.0402593 +0.0387147 +0.0371857 +0.0356721 +0.0341737 +0.0326903 +0.0312216 +0.0297674 +0.0283276 +0.0269018 +0.0254899 +0.0240917 +0.022707 +0.0213355 +0.0199772 +0.0186318 +0.0172991 +0.0159789 +0.0146712 +0.0133756 +0.0120921 +0.0108204 +0.00956045 +0.00831202 +0.00707498 +0.00584917 +0.00463443 +0.00343062 +0.00223758 +0.00105518 +0.000116826 +) + +101{0} +101{0} +) +; diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/combustionProperties b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/combustionProperties new file mode 100644 index 0000000000..ba1c9a7919 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/combustionProperties @@ -0,0 +1,31 @@ +/*--------------------------------*- 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 combustionProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +combustionModel infinitelyFastChemistry; + +infinitelyFastChemistryCoeffs +{ + C 10.0; +} + +noCombustionCoeffs +{ +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/g b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/g new file mode 100644 index 0000000000..81cfdb427d --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/g @@ -0,0 +1,21 @@ +/*--------------------------------*- 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 uniformDimensionedVectorField; + location "constant"; + object g; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -2 0 0 0 0]; +value (0 -9.8 0); + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/polyMesh/blockMeshDict b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/polyMesh/blockMeshDict new file mode 100644 index 0000000000..97cfc596c0 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/polyMesh/blockMeshDict @@ -0,0 +1,64 @@ +/*--------------------------------*- 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; + object blockMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +convertToMeters 1; + +vertices +( + (-0.3 0 -0.3) + ( 0.3 0 -0.3) + ( 0.3 1.0 -0.3) + (-0.3 1.0 -0.3) + (-0.3 0 0.3) + ( 0.3 0 0.3) + ( 0.3 1.0 0.3) + (-0.3 1.0 0.3) + +); + +blocks +( + hex (0 1 2 3 4 5 6 7) (70 70 70) simpleGrading (1 1 1) +); + +edges +( +); + +patches +( + patch base + ( + (0 1 5 4) + ) + patch outlet + ( + (3 2 6 7) + ) + patch sides + ( + (0 4 7 3) + (0 1 2 3) + (1 5 6 2) + (4 5 6 7) + ) +); + +mergePatchPairs +( +); + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/polyMesh/boundary b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/polyMesh/boundary new file mode 100644 index 0000000000..a3059febad --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/polyMesh/boundary @@ -0,0 +1,46 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class polyBoundaryMesh; + location "constant/polyMesh"; + object boundary; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +4 +( + base + { + type patch; + nFaces 4704; + startFace 1014300; + } + outlet + { + type patch; + nFaces 4900; + startFace 1019004; + } + sides + { + type patch; + nFaces 19600; + startFace 1023904; + } + inlet + { + type patch; + nFaces 196; + startFace 1043504; + } +) + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/radiationProperties b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/radiationProperties new file mode 100644 index 0000000000..500834ae4a --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/radiationProperties @@ -0,0 +1,150 @@ +/*--------------------------------*- 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 radiationProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +radiation on; + +radiationModel fvDOM; + +noRadiation +{ +} + +P1Coeffs +{ +} + +fvDOMCoeffs +{ + nPhi 2; // azimuthal angles in PI/2 on X-Y.(from Y to X) + nTheta 2; // polar angles in PI (from Z to X-Y plane) + convergence 1e-3; // convergence criteria for radiation iteration + maxIter 10; // maximum number of iterations +} + +// Number of flow iterations per radiation iteration +solverFreq 10; + +absorptionEmissionModel constantAbsorptionEmission; + +constantAbsorptionEmissionCoeffs +{ + a a [ 0 -1 0 0 0 0 0 ] 0.1; + e e [ 0 -1 0 0 0 0 0 ] 0.1; + E E [ 1 -1 -3 0 0 0 0 ] 0; +} + +greyMeanAbsorptionEmissionCoeffs +{ + lookUpTableFileName "SpeciesTable"; + + EhrrCoeff 0.0; + + CO2 + { + Tcommon 300; //Common Temp + invTemp true; //Is the polynomio using inverse temperature. + Tlow 200; //Low Temp + Thigh 2500; //High Temp + + loTcoeffs //coefss for T < Tcommon + ( + 0 // a0 + + 0 // a1*T + + 0 // a2*T^(+/-)2 + + 0 // a3*T^(+/-)3 + + 0 // a4*T^(+/-)4 + + 0 // a5*T^(+/-)5 + + ); + hiTcoeffs //coefss for T > Tcommon + ( + 18.741 + -121.31e3 + 273.5e6 + -194.05e9 + 56.31e12 + -5.8169e15 + ); + + } + + H2O + { + Tcommon 300; + invTemp true; + Tlow 200; + Thigh 2500; + + loTcoeffs + ( + 0 + 0 + 0 + 0 + 0 + 0 + ); + hiTcoeffs + ( + -0.23093 + -1.12390e3 + 9.4153e6 + -2.99885e9 + 0.51382e12 + -1.868e10 + ); + } + + CH4 + { + Tcommon 300; + Tlow 200; + Thigh 2500; + invTemp false; + + loTcoeffs + ( + 0 + 0 + 0 + 0 + 0 + 0 + ); + hiTcoeffs + ( + 6.6334 + -0.0035686 + 1.6682e-8 + 2.5611e-10 + -2.6558e-14 + 0 + ); + } + +} + +scatterModel constantScatter; + +constantScatterCoeffs +{ + sigma sigma [ 0 -1 0 0 0 0 0 ] 0; + C C [ 0 0 0 0 0 0 0 ] 0; +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/thermophysicalProperties b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/thermophysicalProperties new file mode 100644 index 0000000000..090dd1c924 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/thermophysicalProperties @@ -0,0 +1,54 @@ +/*--------------------------------*- 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; + object thermophysicalProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +thermoType hsPsiMixtureThermo>>>>; + +stoichiometricAirFuelMassRatio stoichiometricAirFuelMassRatio [0 0 0 0 0 0 0] 17.1271; +stoichiometricOxygenFuelMassRatio stoichiometricOxygenFuelMassRatio [0 0 0 0 0 0 0] 4.0; +qFuel qFuel [0 2 -2 0 0 0 0] 5.00264e+07; + +fuel fuel 1 16.0428 + 200 6000 1000 + 1.63543 0.0100844 -3.36924e-06 5.34973e-10 -3.15528e-14 -10005.6 9.9937 + 5.14988 -0.013671 4.91801e-05 -4.84744e-08 1.66694e-11 -10246.6 -4.64132 + 1.67212e-06 170.672; + +oxidant oxidant 1 28.8504 + 200 6000 1000 + 3.10131 0.00124137 -4.18816e-07 6.64158e-11 -3.91274e-15 -985.266 5.35597 + 3.58378 -0.000727005 1.67057e-06 -1.09203e-10 -4.31765e-13 -1050.53 3.11239 + 1.67212e-06 170.672; + +reactants reactants 1 27.6004 + 200 6000 1000 + 2.95825 0.00210441 -7.06762e-07 1.12145e-10 -6.61028e-15 -1865.61 5.80859 + 3.73662 -0.00199028 6.30727e-06 -4.82941e-09 1.23723e-12 -1948.03 2.35566 + 1.67212e-06 170.672; + +burntProducts burntProducts 1 27.6334 + 200 6000 1000 + 3.0602 0.00182422 -5.93878e-07 8.93807e-11 -4.97595e-15 -10998.7 5.32209 + 3.54628 0.000378279 2.02797e-07 9.31602e-10 -6.84016e-13 -11102.1 2.90098 + 1.67212e-06 170.672; + +products products 1 27.6004 + 200 6000 1000 + 3.05615 0.0018477 -6.01767e-07 9.06474e-11 -5.05149e-15 -10995.9 5.33537 + 3.55084 0.000338343 3.42018e-07 7.91162e-10 -6.34688e-13 -11099.7 2.87954 + 1.67212e-06 170.672; + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/turbulenceProperties b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/turbulenceProperties new file mode 100644 index 0000000000..a247de0973 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/constant/turbulenceProperties @@ -0,0 +1,22 @@ +/*--------------------------------*- 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 binary; + class dictionary; + location "constant"; + object turbulenceProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType LESModel; + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/makeFaceSet.setSet b/tutorials/combustion/fireFoam/les/smallPoolFire3D/makeFaceSet.setSet new file mode 100644 index 0000000000..042be546b2 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/makeFaceSet.setSet @@ -0,0 +1 @@ +faceSet f0 new boxToFace (-0.06 -0.001 -0.06)(0.06 0.005 0.06) diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/controlDict b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/controlDict new file mode 100644 index 0000000000..94380a9e76 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/controlDict @@ -0,0 +1,56 @@ +/*--------------------------------*- 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; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +application fireFoam; + +startFrom latestTime; + +startTime 0.0; + +stopAt endTime; + +endTime 10.0; + +deltaT 0.001; + +writeControl adjustableRunTime; + +writeInterval 0.1; + +purgeWrite 0; + +writeFormat ascii; + +writePrecision 6; + +writeCompression uncompressed; + +timeFormat general; + +timePrecision 6; + +graphFormat raw; + +runTimeModifiable yes; + +adjustTimeStep yes; + +maxCo 0.25; + +maxDeltaT 0.1; + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/createPatchDict b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/createPatchDict new file mode 100644 index 0000000000..0b0d58af95 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/createPatchDict @@ -0,0 +1,57 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object createPatchDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// This application/dictionary controls: +// - optional: create new patches from boundary faces (either given as +// a set of patches or as a faceSet) +// - always: order faces on coupled patches such that they are opposite. This +// is done for all coupled faces, not just for any patches created. +// - optional: synchronise points on coupled patches. + +// Tolerance used in matching faces. Absolute tolerance is span of +// face times this factor. To load incorrectly matches meshes set this +// to a higher value. +matchTolerance 1E-3; + +// Do a synchronisation of coupled points after creation of any patches. +pointSync true; + +// Patches to create. +patches +( + { + // Name of new patch + name inlet; + + // Type of new patch + patchInfo + { + type patch; + } + + // How to construct: either from 'patches' or 'set' + constructFrom set; + + // If constructFrom = patches : names of patches. Wildcards allowed. + patches ("periodic.*"); + + // If constructFrom = set : name of faceSet + set f0; + } +); + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/decomposeParDict b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/decomposeParDict new file mode 100644 index 0000000000..535f85cc63 --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/decomposeParDict @@ -0,0 +1,45 @@ +/*--------------------------------*- 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 "system"; + object decomposeParDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +numberOfSubdomains 4; + +method hierarchical; + +simpleCoeffs +{ + n ( 1 2 2 ); + delta 0.001; +} + +hierarchicalCoeffs +{ + n ( 1 2 2 ); + delta 0.001; + order xyz; +} + +manualCoeffs +{ + dataFile "cellDecomposition"; +} + +metisCoeffs +{ +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSchemes b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSchemes new file mode 100644 index 0000000000..da8d7f4f3a --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSchemes @@ -0,0 +1,67 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default Euler; +} + +gradSchemes +{ + default Gauss linear; +} + +divSchemes +{ + default none; + div(phi,U) Gauss limitedLinear 1; + div(phi,k) Gauss limitedLinear 1; + flux(phi,ft) Gauss limitedLinear01 1; + div(phi,ft_b_h) Gauss multivariateSelection + { + fu limitedLinear01 1; + ft limitedLinear01 1; + hs limitedLinear 1; + }; + div((muEff*dev2(grad(U).T()))) Gauss linear; + div(phiU,p) Gauss linear; + div(Ji,Ii_h) Gauss upwind; +} + +laplacianSchemes +{ + default Gauss linear corrected; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default corrected; +} + +fluxRequired +{ + default no; + p_rgh; +} + + +// ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSolution b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSolution new file mode 100644 index 0000000000..8c855503fc --- /dev/null +++ b/tutorials/combustion/fireFoam/les/smallPoolFire3D/system/fvSolution @@ -0,0 +1,103 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + rho + { + solver PCG; + preconditioner DIC; + tolerance 1e-7; + relTol 0.1; + }; + + rhoFinal + { + $rho; + tolerance 1e-7; + relTol 0; + }; + + p_rgh + { + solver GAMG; + tolerance 1e-7; + relTol 0.01; + smoother GaussSeidel; + cacheAgglomeration true; + nCellsInCoarsestLevel 10; + agglomerator faceAreaPair; + mergeLevels 1; + }; + + p_rghFinal + { + $p_rgh; + tolerance 1e-7; + relTol 0; + }; + + + "(U|ft|fu|k|hs)" + { + solver smoothSolver; + smoother GaussSeidel; + tolerance 1e-7; + relTol 0.1; + nSweeps 1; + }; + + "(U|ft|fu|k|hs)Final" + { + $U; + tolerance 1e-7; + relTol 0; + }; + + + Ii + { + solver GAMG; + tolerance 1e-4; + relTol 0; + smoother DILU; + cacheAgglomeration true; + nCellsInCoarsestLevel 10; + agglomerator faceAreaPair; + mergeLevels 1; + } + + G + { + solver PCG; + preconditioner DIC; + tolerance 1e-06; + relTol 0; + } + +} + +PISO +{ + momentumPredictor yes; + nOuterCorrectors 1; + nCorrectors 2; + nNonOrthogonalCorrectors 0; +} + +// ************************************************************************* // diff --git a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/blockMeshDict b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/blockMeshDict index fd92f75904..24c7aabc47 100644 --- a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/blockMeshDict +++ b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/blockMeshDict @@ -28,20 +28,19 @@ vertices ( 662300 4.7545e+06 2100) ( 662300 4.7545e+06 1028) ); + blocks ( hex (0 1 2 3 4 5 6 7) (20 60 60) simpleGrading (10.0 1 1) ); - -edges edges ( ); patches ( - patch maxX + patch maxX ( (3 7 6 2) ) diff --git a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/boundary b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/boundary index cbc211f5e8..60dad0ef57 100644 --- a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/boundary +++ b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/constant/polyMesh/boundary @@ -8,7 +8,7 @@ FoamFile { version 2.0; - format ascii; + format binary; class polyBoundaryMesh; location "constant/polyMesh"; object boundary;