CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   Main CFD Forum (https://www.cfd-online.com/Forums/main/)
-   -   SIMPLE algorithm instability at low viscosities (https://www.cfd-online.com/Forums/main/136800-simple-algorithm-instability-low-viscosities.html)

kooroshg1 June 4, 2014 10:22

SIMPLE algorithm instability at low viscosities
 
Hi everyone,

I am developing a CFD/FVM code with immersed boundary capabilities for steady and laminar flows. The code is based on the SIMPLE algorithm. I am using QUICK scheme for cell face values.

The code works well when the viscosity is high (1.0) using 400 nodes in each direction of the domain. The domain size is 1.0 m X 1.0 m.

When I decrease the viscosity (0.001) the solution diverges catastrophically in few iterations, giving me "NaN" values for pressure and velocities! Has anyone come across something like this?

I really appreciate your comments.

pswpswpsw June 5, 2014 08:53

hi
 
I hope to clarify about your viscosity. 1e-3 does not seem like a low viscosity in either definition.

I guess your "viscosity" is a nondimensionalized one.

Yes. Low viscosity do might not be able to diminish the spreading and increase of error. That's why there is someone add more artificial viscosity in the SIMPLE.

Best,
Shawn

LiteCFD June 5, 2014 11:24

Quote:

Originally Posted by kooroshg1 (Post 495566)
Hi everyone,
When I decrease the viscosity (0.001) the solution diverges catastrophically in few iterations, giving me "NaN" values for pressure and velocities! Has anyone come across something like this?

you can debug your program to understanding what is cause NAN value. I think it can clarify root of problem

kooroshg1 June 5, 2014 15:03

Thanks for your reply.

Yes, 1e-3 is not a low viscosity. However, my code only can work with a viscosity higher than 1e-2. I am trying to debug it. I tried to add artificial viscosity at the initial stages of the solution and gradually removing it as the solution advane but I was not successful.

I checked my iteration history step by step. The low values for viscosity is generating back-flow near my inlet where the boundary conditions are specified as positive velocity and zero pressure gradient.

The low viscosity and positive boundary velocity makes the $a_P$ coefficient (as in chapter 5, An introduction to CFD, Vesteeg) to become negative. This will cause the negative velocities in the domain which is wrong.

Do you have any suggestion how I can debug this? Do you think this happens because of my boundary conditions?

Michail June 9, 2014 11:37

I guess, You need to change QUICK scheme. It osscilates.

I offer HLPA or UMIST

look in CFD-Wiki

http://www.cfd-online.com/Wiki/Discr...onvection_term

take a look at this picture

http://photo.qip.ru/photo/michailkkk.../208372458.jpg


http://www.cfd-online.com/Wiki/Appro...s_and_examples
http://www.cfd-online.com/Wiki/File:Outlet_profiles.JPG

LiteCFD June 19, 2014 10:26

Quote:

Originally Posted by kooroshg1 (Post 495787)
Thanks for your reply.
However, my code only can work with a viscosity higher than 1e-2.
Do you have any suggestion how I can debug this? Do you think this happens because of my boundary conditions?

Your problem is actual yet? If yes, please tell your solution, it's interesting.
In my previous post I assume that not only numerical scheme can cause your problem. Technical NAN can caused by division to infinity, etc. Have you validated your algorithm with viscosity 1.0e-02?

kooroshg1 July 9, 2014 16:51

Peclet number
 
Yes, I still have the same problem. I switched to Hybrid differencing scheme instead of QUICK but the solution still surfers from instabilities. I think it is because high peclet number at cell faces.

I have read that the Peclet number should be less than 2 to insure stability. But with the viscosity in the order of 1e-6, the mesh needs to be refined drastically which is not possible. Can you guide me on how to solve this problem? I came across artificial diffusion but I am not sure if that is the answer. It seems with "artificial diffusion" you just increase the viscosity, but you won't be able to get actual results for low viscosity.

beer July 10, 2014 03:00

Hi

Can you try first order upwind first and maybe use a deferred correction for the higher order terms? 1st-O is always stable for implicit schemes (if you don't make any mistake).
And why are there two threads for the exact same topics?


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