CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Difficulties with viscoelasticFluidFoam solver (https://www.cfd-online.com/Forums/openfoam-solving/70447-difficulties-viscoelasticfluidfoam-solver.html)

titio November 24, 2009 17:43

Difficulties with viscoelasticFluidFoam solver
 
Hi foamers,

I am trying to use the viscoelasticFluidFoam to model the flow of complex fluids in microfluidic systems. To test the code, and to get an idea of its behaviour and performance, I am running the case of the flow between infinite plates, where several analytical solutions for different constitutive equation models are available.

So far, I got the following results of my comparisons.

- For low values of the Deborah number (De), simulated results agree well with the theory.
- When I increase the value of the De number, it starts to deviate, increasing the deviations with De.
- When I run the solver with a null value for the solvent viscosity, I only can get convergence for very small values of De.
-Depending on the value of the density, the solver converges or diverges.

I used the linear version of the PTT model in my simulations, based on the example given in the tutorial, changing of course the mesh.

After talking with some people with knowledge in the area, they refered that there may be a problem in the wall boundary conditions. In particular, for viscoelastic fluids it is not correct to impose zero gradient boundary conditions for the extra tension. I am reading the literature now concerning this question and it looks like one needs to implement specific boundary conditions in the walls for these fluids.

Does anyone has any idea what kind of boundary conditions I should use, and how to do it.

Thanks in advance for any assistance,

Regards,

Titio

ata November 25, 2009 04:19

Difficulties with viscoelasticFluidFoam solver
 
Hi titio
That’s true. I already thought about this subject. In steady state you can use no-slip boundary condition in stationary walls and set div(tau)=-grad(p) that must be modified during the solving. I must tell you this is my opinion and I am not sure if it works or even correct.
Please inform me if it works.
Best regards


Ata

miael March 26, 2012 10:27

Hello everybody,

I just want o ask, if there is something new regarding theboundary conditions for viscoelastic simulations. I want to simulate a pipe-flow and I don't know, if my inletBC ( tau --> fixedValue uniform (0 0 0 0 0 0); ) and outletBC (tau--> zeroGradient;) are correct. For the walls I also use zeroGradient.

Thanks

Michael

arashfluid January 30, 2020 05:01

viscoelasticFluidFoam in steady mode
 
Hello Dear friends,
I am simulating the viscoelastic fluid flow in the microchannel. My Weissenberg number is very high (Wi=28). But my fluid is a Boger type and I use the Oldroyd-B model. At first, I have run the viscoelasticFluidFoam solver in OF1.6-ext in unsteady mode and the solution diverged after 0.008 seconds. Then I have run the same case with the rheoFoam solver in OF4.1 which did not diverge but the number of pressure iterations showed a lack of convergence at each time step. Due to a long time of simulation, I have adjusted and run the rheoFoam solver in a steady mode. But from iteration 50 to the next, the solution goes to divergence. Is there a way I can run the viscoelasticFluidFoam solver in a steady mode so that it is stable?

The settings of my two fvSchemes and fvSolution files in the two solvers are as follows:
for unsteady viscoelasticFluidFoam:

fvSchemes:

ddtSchemes
{
default Euler;
}

gradSchemes
{
default Gauss linear;
grad(p) Gauss linear;
grad(U) Gauss linear;

}

divSchemes
{
default none;
div(phi,U) Gauss upwind;
div(phi,tau) Gauss upwind;
div(tau) Gauss linear;
}

laplacianSchemes
{
default none;
laplacian(etaPEff,U) Gauss linear corrected;
laplacian(etaPEff+etaS,U) Gauss linear corrected;
laplacian((1|A(U)),p) Gauss linear corrected;
}

interpolationSchemes
{
default linear;
interpolate(HbyA) linear;
}

snGradSchemes
{
default corrected;
}

fluxRequired
{
default no;
p;
}

fvSolution:

solvers
{

p
{
solver PCG;
preconditioner
{
// preconditioner Cholesky;
preconditioner AMG;
cycle W-cycle;
policy PAMG;
nPreSweeps 0;
nPostSweeps 2;
groupSize 4;
minCoarseEqns 20;
nMaxLevels 100;
scale off;
smoother ILU;
}

tolerance 1e-07;
relTol 0;
minIter 0;
maxIter 800;
}

U
{

solver BiCGStab;
preconditioner
{
preconditioner Cholesky;
}

tolerance 1e-6;
relTol 0;
minIter 0;
maxIter 1000;
}

tau
{

solver BiCGStab;
preconditioner
{
preconditioner Cholesky;
}

tolerance 1e-6;
relTol 0;
minIter 0;
maxIter 1000;

};

}

PISO
{
nCorrectors 2;
nNonOrthogonalCorrectors 0;
pRefCell 0;
pRefValue 0;
}

relaxationFactors
{
p 0.3;
U 0.5;
tau 0.3;
}

for steady rheoFoam:

fvSchemes:
ddtSchemes
{
default steadyState; //Euler;
}

gradSchemes
{
default Gauss linear;
grad(p) Gauss linear;
grad(U) Gauss linear;
linExtrapGrad Gauss linear;

}

divSchemes
{
default none;
div(tau) Gauss linear;
div(grad(U)) Gauss linear;
div(phi,U) GaussDefCmpw none;
div(phi,theta) GaussDefCmpw cubista;
div(phi,tau) GaussDefCmpw cubista;
div(phi,C) GaussDefCmpw cubista;
}

laplacianSchemes
{
default none;
laplacian(eta,U) Gauss linear corrected;
laplacian(p|(ap-H1)) Gauss linear corrected;
laplacian(D,C) Gauss linear corrected;

}

interpolationSchemes
{
default linear;

}

snGradSchemes
{
default corrected;
}

fluxRequired
{
default no;
p;
}

fvSolution:

solvers
{
"(p|U)"
{
solver PCG;
preconditioner DIC;
tolerance 1e-10;
relTol 0.;
minIter 0;
maxIter 800;

}

"(theta|tau|C)"
{

solver PBiCG;
preconditioner
{
preconditioner DILU;
}

tolerance 1e-10;
relTol 0.;
minIter 0;
maxIter 1000;
}

}


SIMPLE
{
nInIter 1;
nNonOrthogonalCorrectors 0;
pRefCell 0;
pRefValue 0;

residualControl
{

p 1e-5;
U 1e-5;
tau 1e-5;
theta 1e-5;
C 1e-5;

}
}

relaxationFactors
{
fields
{
p 0.3; //0.01;
}

equations
{
U 0.5; //0.7; //1;
tau 0.3; //0.5;//1;
theta 0.3; //1;
C 0.3; //1;
}
}



Please suggest me a way to resolve this problem steadily and stably.


All times are GMT -4. The time now is 13:16.