UCM model stability improvement. M. Nobrega etal

This commit is contained in:
Hrvoje Jasak 2017-02-10 14:19:52 +00:00
parent c8949a5f9e
commit 09992c2b75
2 changed files with 26 additions and 9 deletions

View file

@ -60,13 +60,16 @@ Foam::UCM::UCM
), ),
rho_(dict.lookup("rho")), rho_(dict.lookup("rho")),
etaP_(dict.lookup("etaP")), etaP_(dict.lookup("etaP")),
lambda_(dict.lookup("lambda")) lambda_(dict.lookup("lambda")),
etaStab_(dimensionedScalar::lookupOrDefault("etaStab", dict, 0.0, dimMass/(dimLength*dimTime)))
{} {}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::tmp<Foam::fvVectorMatrix> Foam::UCM::divTau(volVectorField& U) const Foam::tmp<Foam::fvVectorMatrix> Foam::UCM::divTau(volVectorField& U) const
{
if(etaStab_.value() < SMALL)
{ {
dimensionedScalar etaPEff = etaP_; dimensionedScalar etaPEff = etaP_;
@ -77,6 +80,16 @@ Foam::tmp<Foam::fvVectorMatrix> Foam::UCM::divTau(volVectorField& U) const
+ fvm::laplacian( (etaPEff)/rho_, U, "laplacian(etaPEff+etaS,U)") + fvm::laplacian( (etaPEff)/rho_, U, "laplacian(etaPEff+etaS,U)")
); );
} }
else
{
return
(
fvc::div(tau_/rho_, "div(tau)")
- fvc::div((etaStab_/rho_)*fvc::grad(U), "div(tau)")
+ fvm::laplacian( (etaStab_)/rho_, U, "laplacian(etaPEff+etaS,U)")
);
}
}
void Foam::UCM::correct() void Foam::UCM::correct()

View file

@ -28,7 +28,8 @@ Description
UCM non linear viscoelastic fluid model (BIRD et al., 1987). UCM non linear viscoelastic fluid model (BIRD et al., 1987).
Author Author
Jovani L. Favero. All rights reserved Miguel Nóbrega, Silvino Araújo, Célio Fernandes, Luís Ferrás.
All rights reserved
SourceFiles SourceFiles
UCM.C UCM.C
@ -70,6 +71,9 @@ class UCM
//- Relaxation time //- Relaxation time
dimensionedScalar lambda_; dimensionedScalar lambda_;
//- Stabilization viscosity
dimensionedScalar etaStab_;
// Private Member Functions // Private Member Functions