- **OpenFOAM Running, Solving & CFD**
(*https://www.cfd-online.com/Forums/openfoam-solving/*)

- - **Slow convergence in steadystate incompressible simpleFoam suggestions**
(*https://www.cfd-online.com/Forums/openfoam-solving/60303-slow-convergence-steadystate-incompressible-simplefoam-suggestions.html*)

I've recently been doing some I've recently been doing some calculations in a simpleFoam-based solver (incompressible flow, Newtonian viscosity, steady-state), on a 2D flow around a circular cylinder with a 200x200-cell polar mesh.
The problem I'm having is that this is very slow to converge; after 1000 timesteps, it's still not especially well-converged. If I look at the intermediate results, it's fairly clear why -- the wake behind the cylinder is slowly developing, much as it would in a time-accurate simulation, and it takes on the order of a couple of hundred timesteps just for the flow disturbance to reach the downstream end of the domain. Compare this to a multigrid solver which I've been using, in which the flow disturbance reaches the downstream end of the domain after five or ten timesteps, and a few hundred timesteps is sufficient to converge to machine-order accuracy. I suspect the reasons for this are no more than the obvious: The simpleFoam solver is iterating the velocity equation in an explicit manner on a relatively fine grid, and so there the velocity information can only propogate across the grid at a fairly slow rate of one or two cells per iteration. My multigrid solver, on the other hand, propogates the velocity equation on grids of a wide range of sizes, which gets around this limitation even though it also is using explicit iterations. I suppose I could achieve a similar result by doing a simpleFoam calculation on a coarse grid, and then repeatedly transferring the results by hand to a finer grid and repeating the calculation until I get to the fine grid that I want. This requires a lot of manual intervention, however.... Thus, my question: Is there any way, in OpenFOAM's standard suite of solvers or with straightforward modifications to them, to obtain a something equivalent to a multigrid iteration of the velocity equation, so that my calculations will converge faster? (For instance, I know that the pressure poisson-equation solver uses an algebraic-multigrid method; can this be leveraged to handle the velocity equation as well, perhaps by doing a method with an implicit velocity equation?) Alternately, any suggestions on how to automatically do the process of calculating the flow on a coarse grid, and then going through a chain of interpolating onto progressively finer grids and re-solving? Thanks much! |

All times are GMT -4. The time now is 08:47. |