locDynOneEqEddy::locDynOneEqEddy ( const volVectorField& U, const surfaceScalarField& phi, transportModel& transport ) : LESModel(typeName, U, phi, transport), GenEddyVisc(U, phi, transport), k_ ( IOobject ( "k", runTime_.timeName(), U_.db(), IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh_ ), simpleFilter_(U.mesh()), filterPtr_(LESfilter::New(U.mesh(), coeffDict())), filter_(filterPtr_()) { volScalarField KK = 0.5*(filter_(magSqr(U)) - magSqr(filter_(U))); updateSubGridScaleFields(symm(fvc::grad(U)), KK); printCoeffs(); }
scaleSimilarity::scaleSimilarity ( const volVectorField& U, const surfaceScalarField& phi, transportModel& transport ) : LESModel(typeName, U, phi, transport), filterPtr_(LESfilter::New(U.mesh(), coeffDict())), filter_(filterPtr_()) { printCoeffs(); }
dynamicKEqn<BasicTurbulenceModel>::dynamicKEqn ( const alphaField& alpha, const rhoField& rho, const volVectorField& U, const surfaceScalarField& alphaRhoPhi, const surfaceScalarField& phi, const transportModel& transport, const word& propertiesName, const word& type ) : LESeddyViscosity<BasicTurbulenceModel> ( type, alpha, rho, U, alphaRhoPhi, phi, transport, propertiesName ), k_ ( IOobject ( IOobject::groupName("k", this->U_.group()), this->runTime_.timeName(), this->mesh_, IOobject::MUST_READ, IOobject::AUTO_WRITE ), this->mesh_ ), simpleFilter_(this->mesh_), filterPtr_(LESfilter::New(this->mesh_, this->coeffDict())), filter_(filterPtr_()) { bound(k_, this->kMin_); if (type == typeName) { this->printCoeffs(type); } }
dynOneEqEddy::dynOneEqEddy ( const volScalarField& rho, const volVectorField& U, const surfaceScalarField& phi, const basicThermo& thermoPhysicalModel ) : LESModel(typeName, rho, U, phi, thermoPhysicalModel), GenEddyVisc(rho, U, phi, thermoPhysicalModel), filterPtr_(LESfilter::New(U.mesh(), coeffDict())), filter_(filterPtr_()) { updateSubGridScaleFields(dev(symm(fvc::grad(U)))); printCoeffs(); }
dynOneEqEddy::dynOneEqEddy ( const volVectorField& U, const surfaceScalarField& phi, transportModel& transport, const word& turbulenceModelName, const word& modelName ) : LESModel(modelName, U, phi, transport, turbulenceModelName), GenEddyVisc(U, phi, transport), k_ ( IOobject ( "k", runTime_.timeName(), mesh_, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh_ ), simpleFilter_(U.mesh()), filterPtr_(LESfilter::New(U.mesh(), coeffDict())), filter_(filterPtr_()) { bound(k_, kMin_); const volScalarField KK(0.5*(filter_(magSqr(U)) - magSqr(filter_(U)))); updateSubGridScaleFields(symm(fvc::grad(U)), KK); printCoeffs(); }
dynLagrangianCsBound::dynLagrangianCsBound ( const volVectorField& U, const surfaceScalarField& phi, transportModel& transport, const word& turbulenceModelName, const word& modelName ) : LESModel(modelName, U, phi, transport, turbulenceModelName), GenEddyVisc(U, phi, transport), CsMin(0.07), CsMax(0.14), flm_ ( IOobject ( "flm", runTime_.timeName(), mesh_, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh_ ), fmm_ ( IOobject ( "fmm", runTime_.timeName(), mesh_, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh_ ), Cs_ ( IOobject ( "Cs", runTime_.timeName(), mesh_, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE ), Foam::sqrt(flm_/fmm_) ), theta_ ( dimensioned<scalar>::lookupOrAddToDict ( "theta", coeffDict_, 1.5 ) ), simpleFilter_(U.mesh()), filterPtr_(LESfilter::New(U.mesh(), coeffDict())), filter_(filterPtr_()), flm0_("flm0", flm_.dimensions(), 0.0), fmm0_("fmm0", fmm_.dimensions(), VSMALL) { updateSubGridScaleFields(fvc::grad(U)); printCoeffs(); }
dynamicLagrangian<BasicTurbulenceModel>::dynamicLagrangian ( const alphaField& alpha, const rhoField& rho, const volVectorField& U, const surfaceScalarField& alphaRhoPhi, const surfaceScalarField& phi, const transportModel& transport, const word& propertiesName, const word& type ) : LESeddyViscosity<BasicTurbulenceModel> ( type, alpha, rho, U, alphaRhoPhi, phi, transport, propertiesName ), flm_ ( IOobject ( IOobject::groupName("flm", this->U_.group()), this->runTime_.timeName(), this->mesh_, IOobject::MUST_READ, IOobject::AUTO_WRITE ), this->mesh_ ), fmm_ ( IOobject ( IOobject::groupName("fmm", this->U_.group()), this->runTime_.timeName(), this->mesh_, IOobject::MUST_READ, IOobject::AUTO_WRITE ), this->mesh_ ), theta_ ( dimensioned<scalar>::lookupOrAddToDict ( "theta", this->coeffDict_, 1.5 ) ), simpleFilter_(U.mesh()), filterPtr_(LESfilter::New(U.mesh(), this->coeffDict())), filter_(filterPtr_()), flm0_("flm0", flm_.dimensions(), 0.0), fmm0_("fmm0", fmm_.dimensions(), VSMALL) { if (type == typeName) { this->printCoeffs(type); // Correct nut for single-phase solvers only. // For multiphase solvers the phase construction is not complete // at this point. if (isType<geometricOneField>(alpha)) { correctNut(); } } }