# Reasons for decoupling the pressure and velocity computations

 Register Blogs Members List Search Today's Posts Mark Forums Read

 March 31, 2017, 06:00 Reasons for decoupling the pressure and velocity computations #1 New Member   Jan Heiland Join Date: Mar 2017 Location: Berlin Posts: 3 Rep Power: 7 I'm currently writing a review paper that analyses methods for solving the incompressible Navier--Stokes equations from a very mathematical point of view. And I'm lacking some reasoning... The standard routines in the prominent flow solvers, like Ansys CFX or OpenFoam, rely on some sort of pressure correction schemes, say SIMPLE or Rhie--Chow interpolation. The advantages of these schemes, that I have found so far, are the decoupling leads to smaller system that have to be solved the smaller systems are of standard form namely convection-diffusion equations. Are there other advantages? Anyways, I am still missing the definitive argument why decoupling schemes are preferable over schemes that solve for velocity and pressure simultaneously. granzer likes this.

 March 31, 2017, 06:38 #2 Senior Member   Filippo Maria Denaro Join Date: Jul 2010 Posts: 6,259 Rep Power: 67 First, Rhie--Chow interpolation is not a decoupling method but it is used when colocated arrangement leads to pressure-node decoupling in the Laplacian stencil. Then, your main question is about an issue developed for some decades by researchers and you can find a lot of literature. The main reason is that the decoupling is somehow inherent to the fact that the pressure is an auxiliary variable. The momentum equation is suitable to be considered in the form of the Hodge decomposition. The decoupling is a way to resolve faster the system, thus some projection method can be efficient. Of course, as happens in a splitting, something is resulting about the cost in terms of the accuracy. Again, this issue is complex and the topics are largely studied in the literature.

March 31, 2017, 07:24
#3
New Member

Jan Heiland
Join Date: Mar 2017
Location: Berlin
Posts: 3
Rep Power: 7
Thanks for the instructive remarks.

This is basically how I find it discussed in the literature... You say
Quote:
 the momentum equation is suitable to be considered in the form of the Hodge decomposition
and in Ferziger/Peric (2nd edition, p.159) it says
Quote:
 the momentum equations clearly defines the respective velocity components, so their roles are clearly defined
Or, bluntly put, decoupling schemes work and they work well.

However, I am still looking for a more satisfactory argument. Maybe, I should ask the other way round. What is wrong with schemes that keep pressure and velocity coupled?

 March 31, 2017, 07:31 #4 Senior Member   Filippo Maria Denaro Join Date: Jul 2010 Posts: 6,259 Rep Power: 67 Nothing wrong... it is just computationally very expensive granzer likes this.

 March 31, 2017, 09:49 #5 Senior Member   Filippo Maria Denaro Join Date: Jul 2010 Posts: 6,259 Rep Power: 67 just as example of the topic, you can read the first pages of this paper http://www.ecs.umass.edu/mie/tcfd/Papers/FSM0.pdf

 March 31, 2017, 09:51 #6 Senior Member   Michael Prinkey Join Date: Mar 2009 Location: Pittsburgh PA Posts: 363 Rep Power: 23 Just to put some scale to the question. If we consider 3D incompressible flow, steady or transient, you will find that in a segregated scheme, the pressure equation will require O(10) times more work to solve than each of the three momentum equation. For transient simulations using fractional-timestepping, it can be even larger because you need super accurate pressure results. So, the cost of one iteration/timestep is O(1 + 1 + 1 + 10). If, instead of solving the segregated system, you lump all of those equations together and introduce all of the inter-field coupling terms, you will still need to iterate that larger system until the pressure field converges, say O(4*10). Pushing the pressure terms into an implicit system generally does not make time-stepping more stable or implicit corrections much more accurate. So, instead of doing cheap momentum solutions and one hard pressure solution per timestep/iteration...you are doing roughly the same number of iterations for the full system as you did for the segregated pressure solution just to chase a pressure solution and continuity enforcement. It can seem counter intuitive. If you put everything together into the same system, it seems that it *should* converge faster, but in practice, it often doesn't...or at least, it doesn't converge more quickly than the segregated solution scheme sufficient to justify its larger per-iteration cost. It is a bit like a convergence series, if you like. You can build a multi-dimensional Taylor series and compute all of the cross terms in all of the dimensions and you will have lots and lots of terms. That is like the coupled system. It will work. And it will be robust. Or you can notice, that one particular variable really controls the convergence of the series. And you selectively expand in that variable (aka pressure) and you keep far fewer terms for the other variables. Are you missing some details in the cross-terms and lower-order expansions? Sure. Are they important to getting to your answer? Usually not. So, you get virtually the same results with far less effort. sbaffini, chengdi and vishalgarg474 like this.

March 31, 2017, 09:56
#7
Senior Member

Arjun
Join Date: Mar 2009
Location: Nurenberg, Germany
Posts: 1,135
Rep Power: 29
Quote:
 Originally Posted by mprinkey It can seem counter intuitive. If you put everything together into the same system, it seems that it *should* converge faster, but in practice, it often doesn't...or at least, it doesn't converge more quickly than the segregated solution scheme sufficient to justify its larger per-iteration cost. It is a bit like a convergence series, if you like. You can build a multi-dimensional Taylor series and compute all of the cross terms in all of the dimensions and you will have lots and lots of terms. That is like the coupled system. It will work. And it will be robust.
It pretty much the crux of it.

 March 31, 2017, 09:58 #8 Senior Member   Filippo Maria Denaro Join Date: Jul 2010 Posts: 6,259 Rep Power: 67 As wrote in the paper of Perot, the key is in the nature of the matrix for the coupled system...

 March 31, 2017, 10:13 #9 Senior Member   Arjun Join Date: Mar 2009 Location: Nurenberg, Germany Posts: 1,135 Rep Power: 29 The term decoupling in navier stokes is used in different sense. The more appropriate term here is segregated algorithm vs coupled or monolithic algorithms. The are various things wrong with coupled system, at least the way things stand today. (in future we may find ways to overcome them). First of all we are looking at system [A G] u s [D 0] p = 0 or Au + Gp = s u = Ainverse[s - G p] D ( Ainverse[s - G p] ) = 0 D Ainverse G p = -D Ainverse s To solve this system you need to solve (D Ainverse G ) which is Schur compliment. Since you can not construct this schur compliment you try to approximate this with various methods. Approximating Ainverse as inverse of diagonal elements would lead to SIMPLE algorithm. To understand what is wrong with coupled system you need to understand that Schur Compliment is extremely difficult to solve fully (Though i have idea where i can use GMRES to solve this schur without constructing it, many other people have tried similar approach). Approximating this schur leads to different algorithms like SIMPLE i mentioned. Then you can have commuter based approach where you basically move the A-inverse out and solve in two steps. Here Ainverse is just solving from A. The major problems with the coupled solver can be classified in two main categories. 1. Finding a suitable preconditioner to this Schur or to whole system. 2. Finding proper smoother for multilevel scheme. For the point 2, it has been shown that SIMPLE is not a good smoother for it. Gauss Siedel method diverges too easily and pretty much useless. LU factorization method have had some success but fail when A is not diaginally dominant. Last point, over the years companies have developed way to keep SIMPLE stable and convergent, but coupled systems have not seen this fine tuning as we are just starting off with them. Hope it summarizes. mprinkey, acgnipper, fresty and 2 others like this.

 March 31, 2017, 11:42 #11 Senior Member   Filippo Maria Denaro Join Date: Jul 2010 Posts: 6,259 Rep Power: 67 I agree with you Just as a note, the operators A, D, G, should be seen after a discretization is introduced so that their expressions are not unique. arjun likes this.

 April 2, 2017, 04:49 #12 Senior Member   Arjun Join Date: Mar 2009 Location: Nurenberg, Germany Posts: 1,135 Rep Power: 29 Anyway if anyone wants to read up onto this whole issue, i could recommend this book http://www.springer.com/br/book/9780387715636 I have this book and it gets very high recommendation from me. Very nicely written. (Just note that book is written from finite element view and not from finite volume view) sbaffini, FMDenaro and highlando like this.

April 2, 2017, 09:10
#13
Senior Member

Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,259
Rep Power: 67
Quote:
 Originally Posted by arjun Anyway if anyone wants to read up onto this whole issue, i could recommend this book http://www.springer.com/br/book/9780387715636 I have this book and it gets very high recommendation from me. Very nicely written. (Just note that book is written from finite element view and not from finite volume view)

Good textbook, thanks.

Actually, I think that the real issue is about the errors introduced by the decoupling of the equations and how to work with.

 April 3, 2017, 03:40 #14 New Member   Jan Heiland Join Date: Mar 2017 Location: Berlin Posts: 3 Rep Power: 7 Good point made by arjun in #9 (and also by sbaffini in #10). I haven't thought of that. Namely that there are no generally good preconditioners or linear algebra packages for the coupled system. sbaffini likes this.

 April 6, 2017, 12:36 #15 Senior Member   Lucky Join Date: Apr 2011 Location: Orlando, FL USA Posts: 5,112 Rep Power: 60 Although the discussion was nice, I would like to add that we should be a little careful to clarify what we mean by coupled. Coupled solvers that solve coupled systems (such as density based solvers) usually solve the mass, momentum, and energy equations simultaneously. Segregated solvers (usually) decouple the energy equation. Now because you lack an independent equation of motion for pressure, you end up with the pressure-velocity coupling problem. Here you have still have another choice of the coupled mass & momentum equations for pressure & velocity. If you choose not to solve the coupled system directly, then you must use some predictor-corrector scheme (SIMPLE, etc.). As for why a predictor-corrector scheme is preferred, the answer is well explained by post #3. It just so happens (via experience) that more efficient convergence can be achieved, and the coding is elegant! A similar thing also happens for coupled systems and coupled solvers. You can imagine solving an isothermal flow with a coupled solver. At every iteration you solve an energy equation together with mass & momentum to solve for a temperature solution which is more or less trivial. You waste computational effort for no gain, but you get to brag about how you solved mass, momentum, & energy! The question is what is limiting your convergence? Wherever that is, that's where you should focus your effort rather than brute-forcing the entire coupled system. Hence, even with density based solvers, they usually do not couple additional equations beyond energy. I.e. species transport equations are still segregated. Btw this issue doesn't only pop up in pressure-velocity coupling problems and not limited to non-linear problems. In general, the numerical solution of linear systems of equations is littered with tons of general examples. As an elementary example: consider the Jacobi method, or Gauss-Seidel, or successive over-relaxation methods. These methods converge really fast when the systems are diagonally dominant and really slow when they are not diagonally dominant. It's quite easy to set up a system of equations in the wrong order and have a diagonally non-dominant system. It is a mathematically trivial operation to reorder the equations and putting the largest elements on the diagonal. The system of equations that need to be solved are the same but one form is faster than the other! The issue is that we are not only interested in convergence, but fast convergence! arjun likes this.

 April 7, 2017, 07:06 #16 Senior Member     Paolo Lampitella Join Date: Mar 2009 Location: Italy Posts: 1,990 Blog Entries: 29 Rep Power: 36 I have to say that, while I certainly agree on the fact that a segregated solver is the winner in most cases, I do not quite agree on the general idea which is emerging (or seems to, for me) in the comments. That is, if pressure gets you troubles, why bothering coupling all the rest? Also, don't bother coupling "energy modes" (which is what temperature and pressure are) which always exist, and completely rely on your incompressible/isothermal approximation. First of all, pressure and momentum ARE coupled. Only in the inviscid-incompressible limit one is the potential for the other. If it was so easy, the Fluent potential flow initialization would always give fields within few iterations from convergence. Also note that, this coupling is quite different from, say, the one with turbulence models, where the turbulence model only affects the magnitude of the diffusion coefficient. As long as the physical coupling exists, I think the matter is only about the amount of advantage the actual coupling in code gives you, not the sign of the advantage (which is always +). More in general, I would put the question in the following terms: for a given iteration, would you treat all the flow energy modes separately or allow energy to go where it more likely (read also physically, somehow) would go? There are cases where the coupling is evident and better taken into account: strong buoyancy, all the compressible world, combustion with species transport (I still think that knowing how the change of concentration will affect the temperature field at the next iteration is better than not, in predicting the temperature at the next iteration) and, in general, all the cases where the fluid motion is generated by an external force governed by another transported variable. But even in the incompressible/isothermal world, huge pressure differences are likely to give more trouble to a segregated solver than a coupled one. Obviously, all the concerns on the numerical efficiency and availability of robust solvers clearly remain.

 April 7, 2017, 07:45 #17 Senior Member   Filippo Maria Denaro Join Date: Jul 2010 Posts: 6,259 Rep Power: 67 I am not sure where this discussion will drive us ...however, the incompressible hypothesis leads to a different world wherein one thinks differently to the coupling. The compressible flow world encounters different problems. Note that the mathematical character of the equations change. I would focus on the former case. Coupling with energy equation by Bousinnesq model is a different issue.

April 7, 2017, 10:06
#18
Senior Member

Paolo Lampitella
Join Date: Mar 2009
Location: Italy
Posts: 1,990
Blog Entries: 29
Rep Power: 36
Quote:
 Originally Posted by FMDenaro I am not sure where this discussion will drive us ...however, the incompressible hypothesis leads to a different world wherein one thinks differently to the coupling. The compressible flow world encounters different problems. Note that the mathematical character of the equations change. I would focus on the former case. Coupling with energy equation by Bousinnesq model is a different issue.
Yeah... i guess I got too far in both answers because of a personal bias.

 April 7, 2017, 11:42 #19 Senior Member   Filippo Maria Denaro Join Date: Jul 2010 Posts: 6,259 Rep Power: 67 ..... :d:d

April 7, 2017, 11:42
#20
Senior Member

Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,259
Rep Power: 67
Quote:
 Originally Posted by sbaffini yeah... I guess i got too far in both answers because of a personal bias.

..... :d:d