CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Programming & Development (https://www.cfd-online.com/Forums/openfoam-programming-development/)
-   -   SIMPLER Algorithm (https://www.cfd-online.com/Forums/openfoam-programming-development/134870-simpler-algorithm.html)

Tobi May 6, 2014 11:13

SIMPLER Algorithm
 
Hi all,

is there a thread or paper discussed the SIMPLER algorithm and maybe its implementation into openfoam?

regards
Tobi

Simurgh February 2, 2021 02:25

No SIMPLER in OpenFOAM
 
I know this thread is years old, but I am dealing with a project at hand, and OpenFOAM doesn't seem to have a SIMPLER solver. Have you found anything by any chance?

Tobi February 2, 2021 13:56

Nope. However, FOAM has SIMPLE and SIMPLEC

Simurgh February 2, 2021 15:19

pressure-driven simulation issues with SIMPLE and SIMPLEC
 
Looking at OpenFOAM SIMPLE implementation (I am looking at openfoam.com, but main openfoam from openfoam.org shouldn't be that different), the issue is that we have 1 relaxation for pressure only:

Quote:

// Explicitly relax pressure for momentum corrector
p.relax();

Because SIMPLE(C) uses an approximation for correcting velocities, and it has only 1 pressure correction step, and no velocity relaxation (equation relaxation is not the same as field relaxation) then this will cause simpleFoam to diverge quickly for pressure-driven simulations.

To the best of my understanding, the only way to solve pressure-driven simulation is to use pimpleFoam right now. And, pimpleFoam will take much longer to simulate a steady-state than SIMPLER algorithm.

Maybe I should invest some time to implement SIMPLER in OpenFOAM. You are an expert in this area, do you see a use for it?

Thanks

Tobi February 3, 2021 01:05

How much relaxations you would like to have for the pressure field? I am sorry, but I don't get your issue.

Simurgh February 4, 2021 00:53

The issue is not relaxation. I can apply any level of relaxation to p field, and SIMPLEC technically doesn't need relaxation. But, simpleFoam simply diverges for laminar simulation where you have a pressure-driven simulation. SIMPLER should be more stable.

A pressure-driven simulation is when you do not specify velocity at the inlet, and instead you use a stagnation pressure boundary condition (totalPressure for example) at the inlet.

As an example, I have changed boundary condition for Pitz-Daily text book example that comes with OpenFOAM source code. If you run it as is, it will diverge after 70-80 iterations of the simpleFoam solver. If you change the totalPressure for inlet to -1 pa for example, then the solution will converge. Note that pressure relaxation is set to 0.3 here. The solver should not diverge based on small boundary condition changes.

If you use a RAS turbulance model, the simpleFoam will converge. But the advantage of using laminar is that you can see where the flow starts to separate from your surfaces while a turbulance model will hide all these details. Alternative to this (which I have not tried yet) is to use Large Eddy Simulation (LES).

A simple use case is this: imagine you are simulating enterance into a device from a plenum and you want to see where the flow separates and modify the geometry to avoid that.

Regards

Simurgh February 4, 2021 01:03

1 Attachment(s)
sorry, the size of the attachment was too big. I just attached directory 0. The rest of the simulation is the same as pitzDaily example except turbulance model is turned off (laminar simulation).

Tobi February 4, 2021 02:14

I know what pressure driven flows are. I did a lot of simulations using pressure boundaries without specifying any velocity. I don't have any issues regarding such problems.



Regarding your problem. I cannot investigate into that as you don't provide any information. The community cannot support you by showing the boundaries. I expect that the problem you have is related to something else. A pressure difference of 10 Pa is nothing and should work out of the box.





Simple example, I am investigating into a cooling system for the Enders 3 v2 and this is only a pressure driven analysis - a bit more complex because it is a fanPressure and a fanPressureJump (as I do have two fans here). simpleFoam works out of the box and is stable. Pressure Differences are around 12 Pa (and is varying). I did not check if laminar works but if you are using a steady-state solver, the separation is not predicted correctly in any case.

Simurgh February 4, 2021 13:01

I guess at this point I will use simpleFoam with a RAS turbulance model as this works well with pressure-driven simulation. However, I still think a SIMPLER solver would be much more stable with laminar model at higher Reynolds.

The boundary condition I attached is for OpenFOAM "tutorial" pitzDaily. It is not my simulation. I just changed the following tutorial case to make it a pressure-driven case:

$FOAM_TUTORIALS/incompressible/simpleFoam/pitzDaily

If you decide to try it, you also need to make it laminar to see the issue. At 10 pa pressure difference simpleFoam will diverge. At 5 pa, it will eventually converge.

Thank you for your help


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