diff --git a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.C b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.C index f7a69ce406..ef1c049f8b 100644 --- a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.C +++ b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.C @@ -50,8 +50,7 @@ Foam::XiEqModels::Gulder::Gulder : XiEqModel(XiEqProperties, thermo, turbulence, Su), XiEqCoef_(readScalar(XiEqModelCoeffs_.lookup("XiEqCoef"))), - SuMin_(0.01*Su.average()), - uPrimeCoef_(readScalar(XiEqModelCoeffs_.lookup("uPrimeCoef"))) + SuMin_(0.01*Su.average()) {} @@ -67,78 +66,11 @@ Foam::tmp Foam::XiEqModels::Gulder::XiEq() const { volScalarField up(sqrt((2.0/3.0)*turbulence_.k())); const volScalarField& epsilon = turbulence_.epsilon(); - const fvMesh& mesh = Su_.mesh(); - const volVectorField& U = mesh.lookupObject("U"); - - const volSymmTensorField& CT = mesh.lookupObject("CT"); - const volScalarField& Nv = mesh.lookupObject("Nv"); - const volSymmTensorField& nsv = - mesh.lookupObject("nsv"); - - tmp tN - ( - new volScalarField - ( - IOobject - ( - "tN", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE, - false - ), - mesh, - dimensionedScalar("zero", Nv.dimensions(), 0.0), - zeroGradientFvPatchVectorField::typeName - ) - ); - - volScalarField& N = tN(); - - N.internalField() = Nv.internalField()*pow(mesh.V(), 2.0/3.0); - - tmp tns - ( - new volSymmTensorField - ( - IOobject - ( - "tns", - mesh.time().timeName(), - mesh, - IOobject::NO_READ, - IOobject::NO_WRITE - ), - mesh, - dimensionedSymmTensor - ( - "zero", - nsv.dimensions(), - pTraits::zero - ) - ) - ); - - volSymmTensorField& ns = tns(); - - ns.internalField() = nsv.internalField()*pow(mesh.V(), 2.0/3.0); - - const volVectorField Uhat - ( - U/(mag(U) + dimensionedScalar("Usmall", U.dimensions(), 1e-4)) - ); - - const volScalarField nr(sqrt(max(N - (Uhat & ns & Uhat), scalar(1e-4)))); - - const scalarField cellWidth(pow(mesh.V(), 1.0/3.0)); - - const scalarField upLocal(uPrimeCoef_*sqrt((U & CT & U)*cellWidth)); - - const scalarField deltaUp(upLocal*(max(scalar(1.0), pow(nr, 0.5)) - 1.0)); - - up.internalField() += deltaUp; + if (subGridSchelkin()) + { + up.internalField() += calculateSchelkinEffect(); + } volScalarField tauEta(sqrt(mag(thermo_.muu()/(thermo_.rhou()*epsilon)))); @@ -161,6 +93,7 @@ bool Foam::XiEqModels::Gulder::read(const dictionary& XiEqProperties) XiEqModelCoeffs_.lookup("XiEqCoef") >> XiEqCoef_; XiEqModelCoeffs_.lookup("uPrimeCoef") >> uPrimeCoef_; + XiEqModelCoeffs_.lookup("subGridSchelkin") >> subGridSchelkin_; return true; } diff --git a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.H b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.H index e1bbb3d708..c4c6afbb27 100644 --- a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.H +++ b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/Gulder/Gulder.H @@ -61,9 +61,6 @@ class Gulder //- Minimum laminar burning velocity const dimensionedScalar SuMin_; - //- Model constant - scalar uPrimeCoef_; - // Private Member Functions diff --git a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C index d0b7efeded..6483712ec8 100644 --- a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C +++ b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C @@ -84,6 +84,11 @@ Foam::tmp Foam::XiEqModels::SCOPEXiEq::XiEq() const const volScalarField& epsilon = turbulence_.epsilon(); volScalarField up(sqrt((2.0/3.0)*k)); + if (subGridSchelkin()) + { + up.internalField() += calculateSchelkinEffect(); + } + volScalarField l(lCoef_*sqrt(3.0/2.0)*up*k/epsilon); volScalarField Rl(up*l*thermo_.rhou()/thermo_.muu()); diff --git a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.H b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.H index ff49390a6d..eeafa1a150 100644 --- a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.H +++ b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.H @@ -58,9 +58,16 @@ class SCOPEXiEq { // Private data + // Model constant scalar XiEqCoef_; + + // Model constant scalar XiEqExp_; + + // Model constant scalar lCoef_; + + //- Minimum Su dimensionedScalar SuMin_; //- The SCOPE laminar flame speed model used to obtain the diff --git a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.C b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.C index de5850e913..e90c0b48db 100644 --- a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.C +++ b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.C @@ -77,6 +77,11 @@ Foam::XiEqModel::XiEqModel IOobject::NO_WRITE ), Su.mesh() + ), + uPrimeCoef_(XiEqModelCoeffs_.lookupOrDefault("uPrimeCoef", 0.0)), + subGridSchelkin_ + ( + XiEqModelCoeffs_.lookupOrDefault("subGridSchelkin", false) ) {} @@ -93,6 +98,10 @@ bool Foam::XiEqModel::read(const dictionary& XiEqProperties) { XiEqModelCoeffs_ = XiEqProperties.subDict(type() + "Coeffs"); + uPrimeCoef_ = XiEqModelCoeffs_.lookupOrDefault("uPrimeCoef", 0.0); + subGridSchelkin_ = + XiEqModelCoeffs_.lookupOrDefault("subGridSchelkin", false); + return true; } @@ -109,4 +118,85 @@ void Foam::XiEqModel::writeFields() const } } +Foam::tmp +Foam::XiEqModel::calculateSchelkinEffect() const +{ + const fvMesh& mesh = Su_.mesh(); + + const volVectorField& U = mesh.lookupObject("U"); + + const volSymmTensorField& CT = mesh.lookupObject("CT"); + const volScalarField& Nv = mesh.lookupObject("Nv"); + const volSymmTensorField& nsv = + mesh.lookupObject("nsv"); + + tmp tN + ( + new volScalarField + ( + IOobject + ( + "tN", + mesh.time().timeName(), + mesh, + IOobject::NO_READ, + IOobject::NO_WRITE, + false + ), + mesh, + dimensionedScalar("zero", Nv.dimensions(), 0.0), + zeroGradientFvPatchVectorField::typeName + ) + ); + + volScalarField& N = tN(); + + N.internalField() = Nv.internalField()*pow(mesh.V(), 2.0/3.0); + + tmp tns + ( + new volSymmTensorField + ( + IOobject + ( + "tns", + mesh.time().timeName(), + mesh, + IOobject::NO_READ, + IOobject::NO_WRITE + ), + mesh, + dimensionedSymmTensor + ( + "zero", + nsv.dimensions(), + pTraits::zero + ) + ) + ); + + volSymmTensorField& ns = tns(); + + ns.internalField() = nsv.internalField()*pow(mesh.V(), 2.0/3.0); + + const volVectorField Uhat + ( + U/(mag(U) + dimensionedScalar("Usmall", U.dimensions(), 1e-4)) + ); + + const volScalarField nr(sqrt(max(N - (Uhat & ns & Uhat), scalar(1e-4)))); + + const scalarField cellWidth(pow(mesh.V(), 1.0/3.0)); + + const scalarField upLocal(uPrimeCoef_*sqrt((U & CT & U)*cellWidth)); + + const scalarField deltaUp(upLocal*(max(scalar(1.0), pow(nr, 0.5)) - 1.0)); + + //Re use tN + N.internalField() = upLocal*(max(scalar(1.0), pow(nr, 0.5)) - 1.0); + + return tN; + +} + // ************************************************************************* // diff --git a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.H b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.H index 664fcf8b2e..ac8c9eae11 100644 --- a/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.H +++ b/applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel/XiEqModel.H @@ -62,14 +62,30 @@ protected: // Protected data + //- Dictionary dictionary XiEqModelCoeffs_; + //- Thermo const hhuCombustionThermo& thermo_; + + //- Turbulence const compressible::RASModel& turbulence_; + + //- Laminar burning velocity const volScalarField& Su_; + + //- Volumetric obstacles number volScalarField Nv_; + + // volSymmTensorField nsv_; + //- Schelkin effect Model constant + scalar uPrimeCoef_; + + //- Use sub-grid Schelkin effect + bool subGridSchelkin_; + private: @@ -146,6 +162,15 @@ public: return turbulence_.muEff(); } + //- Return state of the sub-grid Schelkin effect + bool subGridSchelkin() const + { + return subGridSchelkin_; + } + + //- Return the sub-grid Schelkin effect + tmp calculateSchelkinEffect() const; + //- Update properties from given dictionary virtual bool read(const dictionary& XiEqProperties) = 0; diff --git a/tutorials/combustion/PDRFoam/0/Aw b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Aw similarity index 99% rename from tutorials/combustion/PDRFoam/0/Aw rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Aw index 6ef274bb0c..6e623345fc 100644 --- a/tutorials/combustion/PDRFoam/0/Aw +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Aw @@ -17,7 +17,7 @@ FoamFile dimensions [ 0 -1 0 0 0 0 0 ]; -internalField nonuniform List +internalField nonuniform List 8025 ( 18.372496 diff --git a/tutorials/combustion/PDRFoam/0/B b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/B similarity index 99% rename from tutorials/combustion/PDRFoam/0/B rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/B index db76de1d70..00b545c496 100644 --- a/tutorials/combustion/PDRFoam/0/B +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/B @@ -17,7 +17,7 @@ FoamFile dimensions [ 0 0 0 0 0 0 0 ]; -internalField nonuniform List +internalField nonuniform List 8025 ( (1.785697 0 0 1.785697 0 1.875) diff --git a/tutorials/combustion/PDRFoam/0/CR b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/CR similarity index 99% rename from tutorials/combustion/PDRFoam/0/CR rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/CR index 0b694da8a1..37b3633fa3 100644 --- a/tutorials/combustion/PDRFoam/0/CR +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/CR @@ -17,7 +17,7 @@ FoamFile dimensions [ 0 -1 0 0 0 0 0 ]; -internalField nonuniform List +internalField nonuniform List 8025 ( (98.997697 0 0 77.711245 0 30.754852) diff --git a/tutorials/combustion/PDRFoam/0/CT b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/CT similarity index 99% rename from tutorials/combustion/PDRFoam/0/CT rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/CT index 80fdec42e6..3349ea01c1 100644 --- a/tutorials/combustion/PDRFoam/0/CT +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/CT @@ -17,7 +17,7 @@ FoamFile dimensions [ 0 -1 0 0 0 0 0 ]; -internalField nonuniform List +internalField nonuniform List 8025 ( (4.501854 0 0 3.437531 0 1.537743) diff --git a/tutorials/combustion/PDRFoam/0/Lobs b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Lobs similarity index 99% rename from tutorials/combustion/PDRFoam/0/Lobs rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Lobs index 63b65fa6f2..4ddf9c2b17 100644 --- a/tutorials/combustion/PDRFoam/0/Lobs +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Lobs @@ -17,7 +17,7 @@ FoamFile dimensions [ 0 1 0 0 0 0 0 ]; -internalField nonuniform List +internalField nonuniform List 8025 ( 0.2 diff --git a/tutorials/combustion/PDRFoam/0/Nv b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Nv similarity index 99% rename from tutorials/combustion/PDRFoam/0/Nv rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Nv index b31b2996cb..a75358670c 100644 --- a/tutorials/combustion/PDRFoam/0/Nv +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Nv @@ -17,7 +17,7 @@ FoamFile dimensions [ 0 0 0 0 0 0 0 ]; -internalField nonuniform List +internalField nonuniform List 8025 ( 2.019581 diff --git a/tutorials/combustion/PDRFoam/0/Su b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Su similarity index 100% rename from tutorials/combustion/PDRFoam/0/Su rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Su diff --git a/tutorials/combustion/PDRFoam/0/T b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/T similarity index 100% rename from tutorials/combustion/PDRFoam/0/T rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/T diff --git a/tutorials/combustion/PDRFoam/0/Tu b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Tu similarity index 100% rename from tutorials/combustion/PDRFoam/0/Tu rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Tu diff --git a/tutorials/combustion/PDRFoam/0/U b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/U similarity index 100% rename from tutorials/combustion/PDRFoam/0/U rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/U diff --git a/tutorials/combustion/PDRFoam/0/Xi b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Xi similarity index 100% rename from tutorials/combustion/PDRFoam/0/Xi rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/Xi diff --git a/tutorials/combustion/PDRFoam/0/alphat b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/alphat similarity index 100% rename from tutorials/combustion/PDRFoam/0/alphat rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/alphat diff --git a/tutorials/combustion/PDRFoam/0/b b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/b similarity index 100% rename from tutorials/combustion/PDRFoam/0/b rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/b diff --git a/tutorials/combustion/PDRFoam/0/betav b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/betav similarity index 99% rename from tutorials/combustion/PDRFoam/0/betav rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/betav index 1e8a7c8ccb..61726ff235 100644 --- a/tutorials/combustion/PDRFoam/0/betav +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/betav @@ -17,7 +17,7 @@ FoamFile dimensions [ 0 0 0 0 0 0 0 ]; -internalField nonuniform List +internalField nonuniform List 8025 ( 0 diff --git a/tutorials/combustion/PDRFoam/0/epsilon b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/epsilon similarity index 100% rename from tutorials/combustion/PDRFoam/0/epsilon rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/epsilon diff --git a/tutorials/combustion/PDRFoam/0/epsilon.old b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/epsilon.old similarity index 100% rename from tutorials/combustion/PDRFoam/0/epsilon.old rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/epsilon.old diff --git a/tutorials/combustion/PDRFoam/0/ft b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/ft similarity index 100% rename from tutorials/combustion/PDRFoam/0/ft rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/ft diff --git a/tutorials/combustion/PDRFoam/0/k b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/k similarity index 100% rename from tutorials/combustion/PDRFoam/0/k rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/k diff --git a/tutorials/combustion/PDRFoam/0/k.old b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/k.old similarity index 100% rename from tutorials/combustion/PDRFoam/0/k.old rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/k.old diff --git a/tutorials/combustion/PDRFoam/0/mut b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/mut similarity index 100% rename from tutorials/combustion/PDRFoam/0/mut rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/mut diff --git a/tutorials/combustion/PDRFoam/0/nsv b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/nsv similarity index 99% rename from tutorials/combustion/PDRFoam/0/nsv rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/nsv index ae922c5dbe..d32af7d773 100644 --- a/tutorials/combustion/PDRFoam/0/nsv +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/nsv @@ -17,7 +17,7 @@ FoamFile dimensions [ 0 0 0 0 0 0 0 ]; -internalField nonuniform List +internalField nonuniform List 8025 ( (0.634791 0 0 0.634791 0 0.03) diff --git a/tutorials/combustion/PDRFoam/0/p b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/p similarity index 100% rename from tutorials/combustion/PDRFoam/0/p rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/0/p diff --git a/tutorials/combustion/PDRFoam/Allclean b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/Allclean similarity index 100% rename from tutorials/combustion/PDRFoam/Allclean rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/Allclean diff --git a/tutorials/combustion/PDRFoam/Allrun b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/Allrun similarity index 95% rename from tutorials/combustion/PDRFoam/Allrun rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/Allrun index c3595df050..a972b6806a 100755 --- a/tutorials/combustion/PDRFoam/Allrun +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/Allrun @@ -14,5 +14,4 @@ runApplication PDRMesh # Run runApplication PDRFoam -# ----------------------------------------------------------------- end-of-file - +# ----------------------------------------------------------------- end-of-file \ No newline at end of file diff --git a/tutorials/combustion/PDRFoam/README b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/README similarity index 83% rename from tutorials/combustion/PDRFoam/README rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/README index 8a5eab0d9d..bbf97c6866 100644 --- a/tutorials/combustion/PDRFoam/README +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/README @@ -8,5 +8,4 @@ Step to introduce the PDR fields: 1) Create zero-size patches for wall or/and coupled baffles in the boundary file. 2) Specify the boundary contitions for these patches in the fields. -3) Create the new PDR mesh using the PDRMesh utility - +3) Create the new PDR mesh using the PDRMesh utility. \ No newline at end of file diff --git a/tutorials/combustion/PDRFoam/constant/PDRProperties b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/PDRProperties similarity index 80% rename from tutorials/combustion/PDRFoam/constant/PDRProperties rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/PDRProperties index 7345d89ad1..c63f9cae44 100755 --- a/tutorials/combustion/PDRFoam/constant/PDRProperties +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/PDRProperties @@ -49,25 +49,27 @@ instabilityCoeffs { XiEqModelL { - XiEqModel Gulder; + XiEqModel Gulder; + uPrimeCoef 1.0; + subGridSchelkin true; GulderCoeffs { - XiEqCoef 0.62; - uPrimeCoef 1.0; + XiEqCoef 0.62; } } XiEqModelH { - XiEqModel SCOPEXiEq; + XiEqModel SCOPEXiEq; + uPrimeCoef 1.0; + subGridSchelkin true; - SCOPEXiEqCoeffs - { - XiEqCoef 1.6; - XiEqExp 0.33333; - lCoef 0.336; - uPrimeCoef 1.0; + SCOPEXiEqCoeffs + { + XiEqCoef 1.6; + XiEqExp 0.33333; + lCoef 0.336; } } } diff --git a/tutorials/combustion/PDRFoam/constant/RASProperties b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/RASProperties similarity index 100% rename from tutorials/combustion/PDRFoam/constant/RASProperties rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/RASProperties diff --git a/tutorials/combustion/PDRFoam/constant/combustionProperties b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/combustionProperties similarity index 100% rename from tutorials/combustion/PDRFoam/constant/combustionProperties rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/combustionProperties diff --git a/tutorials/combustion/PDRFoam/constant/dynamicMeshDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/dynamicMeshDict similarity index 100% rename from tutorials/combustion/PDRFoam/constant/dynamicMeshDict rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/dynamicMeshDict diff --git a/tutorials/combustion/PDRFoam/constant/g b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/g similarity index 100% rename from tutorials/combustion/PDRFoam/constant/g rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/g diff --git a/tutorials/combustion/PDRFoam/constant/polyMesh/blockMeshDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/polyMesh/blockMeshDict similarity index 100% rename from tutorials/combustion/PDRFoam/constant/polyMesh/blockMeshDict rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/polyMesh/blockMeshDict diff --git a/tutorials/combustion/PDRFoam/constant/polyMesh/boundary b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/polyMesh/boundary similarity index 100% rename from tutorials/combustion/PDRFoam/constant/polyMesh/boundary rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/polyMesh/boundary diff --git a/tutorials/combustion/PDRFoam/constant/thermophysicalProperties b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/thermophysicalProperties similarity index 99% rename from tutorials/combustion/PDRFoam/constant/thermophysicalProperties rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/thermophysicalProperties index 561cfd6f12..401abd41ee 100644 --- a/tutorials/combustion/PDRFoam/constant/thermophysicalProperties +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/thermophysicalProperties @@ -59,6 +59,4 @@ burntProducts Ts 170.672; } -// ************************************************************************* // - - +// ************************************************************************* // \ No newline at end of file diff --git a/tutorials/combustion/PDRFoam/constant/turbulenceProperties b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/turbulenceProperties similarity index 100% rename from tutorials/combustion/PDRFoam/constant/turbulenceProperties rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/constant/turbulenceProperties diff --git a/tutorials/combustion/PDRFoam/fuels/propane.dat b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/fuels/propane.dat similarity index 99% rename from tutorials/combustion/PDRFoam/fuels/propane.dat rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/fuels/propane.dat index fc8760c431..c13dca170a 100644 --- a/tutorials/combustion/PDRFoam/fuels/propane.dat +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/fuels/propane.dat @@ -69,5 +69,4 @@ SCOPECoeffs 0 ); } - } - +} \ No newline at end of file diff --git a/tutorials/combustion/PDRFoam/makeBlockedFaceSet.setSet b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/makeBlockedFaceSet.setSet similarity index 100% rename from tutorials/combustion/PDRFoam/makeBlockedFaceSet.setSet rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/makeBlockedFaceSet.setSet diff --git a/tutorials/combustion/PDRFoam/system/PDRMeshDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/PDRMeshDict similarity index 100% rename from tutorials/combustion/PDRFoam/system/PDRMeshDict rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/PDRMeshDict diff --git a/tutorials/combustion/PDRFoam/system/changeDictionaryDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/changeDictionaryDict similarity index 100% rename from tutorials/combustion/PDRFoam/system/changeDictionaryDict rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/changeDictionaryDict diff --git a/tutorials/combustion/PDRFoam/system/controlDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/controlDict similarity index 98% rename from tutorials/combustion/PDRFoam/system/controlDict rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/controlDict index b26483da7c..920dd2a521 100644 --- a/tutorials/combustion/PDRFoam/system/controlDict +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/controlDict @@ -51,5 +51,4 @@ maxCo 0.3; maxDeltaT 1; -// ************************************************************************* // - +// ************************************************************************* // \ No newline at end of file diff --git a/tutorials/combustion/PDRFoam/system/decomposeParDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/decomposeParDict similarity index 100% rename from tutorials/combustion/PDRFoam/system/decomposeParDict rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/decomposeParDict diff --git a/tutorials/combustion/PDRFoam/system/fvSchemes b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSchemes similarity index 93% rename from tutorials/combustion/PDRFoam/system/fvSchemes rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSchemes index 35dc92e170..d600158ce4 100755 --- a/tutorials/combustion/PDRFoam/system/fvSchemes +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSchemes @@ -1,87 +1,85 @@ -/*--------------------------------*- 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; - grad(p) Gauss linear; -} - -divSchemes -{ - default none; - - div(phi,U) Gauss limitedLinearV 1; - div(phiU,p) Gauss limitedLinear 1; - div(phid,p) Gauss limitedLinear 1; - div(phi,k) Gauss limitedLinear 1; - div(phi,epsilon) Gauss limitedLinear 1; - - div(phiXi,Xi) Gauss limitedLinear 1; - div(phiSt,b) Gauss limitedLinear01 1; - - div(phi,ft_b_h_hu) Gauss multivariateSelection - { - ft limitedLinear01 1; - b limitedLinear01 1; - Xi limitedLinear 1; - h limitedLinear 1; - hu limitedLinear 1; - }; - - div((Su*grad(b))) Gauss linear; - div((U+((Su*Xi)*grad(b)))) Gauss linear; - div((muEff*dev2(T(grad(U))))) Gauss linear; - div(U) Gauss linear; -} - -laplacianSchemes -{ - default none; - laplacian(muEff,U) Gauss linear limited 0.333; - laplacian(DkEff,k) Gauss linear limited 0.333; - laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333; - laplacian((rho*inv((((1)*A(U))+((((0.5*rho)*CR)*mag(U))+((((Csu*(1))*betav)*muEff)*sqr(Aw)))))),p) Gauss linear limited 0.333; - laplacian(Db,b) Gauss linear limited 0.333; - laplacian(Db,ft) Gauss linear limited 0.333; - laplacian(Db,h) Gauss linear limited 0.333; - laplacian(Db,hu) Gauss linear limited 0.333; -} - -interpolationSchemes -{ - default linear; -} - -snGradSchemes -{ - default limited 0.333; -} - -fluxRequired -{ - default no; - p; -} - - -// ************************************************************************* // +/*--------------------------------*- 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; + grad(p) Gauss linear; +} + +divSchemes +{ + default none; + + div(phi,U) Gauss limitedLinearV 1; + div(phiU,p) Gauss limitedLinear 1; + div(phid,p) Gauss limitedLinear 1; + div(phi,k) Gauss limitedLinear 1; + div(phi,epsilon) Gauss limitedLinear 1; + + div(phiXi,Xi) Gauss limitedLinear 1; + div(phiSt,b) Gauss limitedLinear01 1; + + div(phi,ft_b_h_hu) Gauss multivariateSelection + { + ft limitedLinear01 1; + b limitedLinear01 1; + Xi limitedLinear 1; + h limitedLinear 1; + hu limitedLinear 1; + }; + + div((Su*grad(b))) Gauss linear; + div((U+((Su*Xi)*grad(b)))) Gauss linear; + div((muEff*dev2(T(grad(U))))) Gauss linear; + div(U) Gauss linear; +} + +laplacianSchemes +{ + default none; + laplacian(muEff,U) Gauss linear limited 0.333; + laplacian(DkEff,k) Gauss linear limited 0.333; + laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333; + laplacian((rho*inv((((1)*A(U))+((((0.5*rho)*CR)*mag(U))+((((Csu*(1))*betav)*muEff)*sqr(Aw)))))),p) Gauss linear limited 0.333; + laplacian(Db,b) Gauss linear limited 0.333; + laplacian(Db,ft) Gauss linear limited 0.333; + laplacian(Db,h) Gauss linear limited 0.333; + laplacian(Db,hu) Gauss linear limited 0.333; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default limited 0.333; +} + +fluxRequired +{ + default no; + p; +} +// ************************************************************************* // diff --git a/tutorials/combustion/PDRFoam/system/fvSolution b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSolution similarity index 90% rename from tutorials/combustion/PDRFoam/system/fvSolution rename to tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSolution index 418cb8e9fc..8a927992fe 100755 --- a/tutorials/combustion/PDRFoam/system/fvSolution +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/fvSolution @@ -1,54 +1,53 @@ -/*--------------------------------*- 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-05; - relTol 0; - }; - - p - { - solver PCG; - preconditioner DIC; - tolerance 1e-6; - relTol 0; - }; - - "(U|ft|fu|b|Xi|Su|h|hu|R|k|epsilon)" - { - solver PBiCG; - preconditioner DILU; - tolerance 1e-05; - relTol 0; - } -} - -PISO -{ - nCorrectors 2; - nNonOrthogonalCorrectors 0; - momentumPredictor true; -} - - -// ************************************************************************* // +/*--------------------------------*- 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-05; + relTol 0; + }; + + p + { + solver PCG; + preconditioner DIC; + tolerance 1e-6; + relTol 0; + }; + + "(U|ft|fu|b|Xi|Su|h|hu|R|k|epsilon)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-05; + relTol 0; + } +} + +PISO +{ + nCorrectors 2; + nNonOrthogonalCorrectors 0; + momentumPredictor true; +} + + +// ************************************************************************* //