
[Sponsors] 
Question about RhieChow Interpolation 

LinkBack  Thread Tools  Search this Thread  Display Modes 
January 18, 2021, 17:31 
Question about RhieChow Interpolation

#1 
Member
Raphael
Join Date: Nov 2012
Posts: 68
Rep Power: 12 
I have a question about implementation of rhiechow interpolation for a collocated scheme. I think I understand how to calculate face velocities using rhiechow interpolation. My question is where do I need to compute face velocities in this way (vs. just simple/geometric interpolation):
(1) When computing the source term for the pressure correction equation (2) When computing the coefficients of the neighbors in the momentum equations (which require face mass fluxes) (3) When computing the coefficients of the neighbors in all scalar transport equations (which also requires face mass fluxes) I can understand if we need to do this for (1). For (2), it seems to me to not be so relelvant since, the purpose of this is to eliminate a checkerboard pressure field. For (3), it seems even less relevant since it is not even part of the NavierStokes equations. 

January 19, 2021, 04:49 

#2 
Senior Member

Never actually coded it, but the general reasoning is the following one:
1) If you write the continuity equation without the RC term it leads to the pressure checkerboard problem, so yes, it is needed here (not sure about the nomenclature tough, if it is a source term or, actually, part of the flux itself) 2&3) Once you put it into your continuity equation, the mass flux that satisfies it is affected as well. You need to use that exact mass flux that satisfies continuity in all the other equations, either velocity component or additional scalars. It kind of is the whole point of using RC. Otherwise those equations would not be solved correctly. Consistency in discretization is the key of this whole matter of the pressure equation. 

January 19, 2021, 05:15 

#3  
Senior Member
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,401
Rep Power: 68 
Quote:
First, I suggest to read the original paper of R & C, furthermore some details are quite clearly illustrated in the textbook of Ferziger, Peric & Street. If you want see the issue from a different perpsective, I worked on the topic in these papers:  see Eq.(27) here https://www.researchgate.net/publica...ydriven_flows  see Eq. (47) here https://www.researchgate.net/publica...taggered_grids 

January 19, 2021, 10:20 

#4  
Member
Raphael
Join Date: Nov 2012
Posts: 68
Rep Power: 12 
Quote:


January 19, 2021, 10:37 

#5 
Senior Member

Cell velocities are just that. They get corrected because that is a specific step of the segregated approach (with or without RC). This correction involves the pressure gradient.
Face velocities are needed to advance the momentum equations, but they are treated differently from the mass flow rate on the faces, which is assumed known when you solve for the momentum. Basically, face values for scalars or velocities are treated the same here. And no, there is no pressure in them. Pressure appears in the mass flow rate, as a consequence of how the continuity equation is formulated. One could say that RC is basically a formula for the mass flow rate to be used in colocated solvers to avoid the pressure checkerboard problem. So, as you can see, these are three very different aspects of the overall procedure, each one with a specific scope. 

January 19, 2021, 10:43 

#6 
Senior Member
Arjun
Join Date: Mar 2009
Location: Nurenberg, Germany
Posts: 1,204
Rep Power: 31 
Read Prof Peric's book. It is detailed very well there.


January 19, 2021, 11:25 

#7  
Senior Member
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,401
Rep Power: 68 
Quote:
Indeed, there are different contexts wherein RC interpolation can be introduced. For example, even on colocated grids one can simply discretize the Div Grad operator on a compact stencil with second order central formula and that would produce no checkerboard modes in the pressure. What is the consequence? The divergencefree constraint cannot be satisfied up to machine precision but only at the level of the truncation error. Just an analysis of this latter will show the origin of the RC interpolation. 

January 19, 2021, 12:58 

#8 
Member
Raphael
Join Date: Nov 2012
Posts: 68
Rep Power: 12 

January 19, 2021, 14:47 

#9  
Senior Member
Join Date: May 2012
Posts: 537
Rep Power: 15 
Quote:
I think a simple explanation for this is partly given in this paper. In many textbooks it seems that checkerboard pressure will always come into play if we use a second order approximation for the pressure on colocated grids. This is not the case, but perhaps it is the most straightforward way to introduce the concept of staggering. Anyways, combining forward and backwards differences it is possible to construct a second order method with a compact stencil for pressure without spurious oscillations. http://www.inderscience.com/storage/...3742121058.pdf 

January 19, 2021, 19:13 

#10  
Senior Member
Arjun
Join Date: Mar 2009
Location: Nurenberg, Germany
Posts: 1,204
Rep Power: 31 
Quote:
Let me try to help you out a bit, then give it a trial again. Lets say you have two cells across the face, one in left and one in right. Now lets say you also have gradient of pressure available at this points say dPdnLeft and dPdnRight. Now if the distance between the two cell centers (left and right ) is ds then. Code:
dPdn_at_face_center = 0.5 *( dPdnLeft + dPdnRight). Now dPdn_at_face_center can also be computed as Code:
dPdn_at_face_center = ( Pressure_right_cell  Pressure_left_cell) / ds Code:
( Pressure_right_cell  Pressure_left_cell) / ds = 0.5 *( dPdnLeft + dPdnRight). Now the Rhie and Chow flux is given as difference of these two gradients, which upon convergence will go to zero. Code:
Rhie Chow flux = (Ap/Volume) * { ( Pressure_right_cell  Pressure_left_cell) / ds  0.5 *( dPdnLeft + dPdnRight) } Code:
= (Ap/Volume) * { ( Pressure_correction_right_cell  Pressure_correction_left_cell) / ds } 

January 19, 2021, 21:02 

#11  
Member
Raphael
Join Date: Nov 2012
Posts: 68
Rep Power: 12 
Quote:


January 20, 2021, 05:07 

#12 
Senior Member
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,401
Rep Power: 68 
arjun provided a good description of one of the way to introduce the RC interpolation. Other ways can be introduced but I would invite you to explore the first step of controlling checkerboard modes: use directly the compact discretization of Div Grad operators and use the interpolation in the source term. Then check if your solution (velocity & pressure) produces spurious modes and check the level of fulfillment of the divergencefree constraint.
Remember that RC is based on a dissipative term 

January 20, 2021, 05:15 

#13  
Senior Member

Quote:


January 20, 2021, 05:22 

#14  
Senior Member
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,401
Rep Power: 68 
Quote:
Never tested personally, shouldn't be maybe more suitable in a global ILES formulation? 

January 20, 2021, 05:33 

#15 
Senior Member

Me neither actually, but it explicitly comes out from adding a pressure scale similar term to the SGS stresses (see sec. 4.6 in my Ph.D. thesis). Of course, it is just the first term in the series expansion of the scale similar term. It is not exactly equal to the RC term.


Tags 
collocated grid, rhiechow, rhiechow simple 
Thread Tools  Search this Thread 
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
[snappyHexMesh] sHM layer process keeps getting killed  MBttR  OpenFOAM Meshing & Mesh Conversion  4  August 15, 2016 03:21 
Am I using the Interpolation Function Correctly?  Andrew Norfolk  CFX  3  July 21, 2016 10:26 
Rhie and Chows pressure interpolation  sajad6  Main CFD Forum  2  January 10, 2016 05:25 
Surface interpolation schemes and parallelization  jutta  OpenFOAM Running, Solving & CFD  0  February 25, 2010 14:32 
Interpolation question  sdk  Main CFD Forum  0  December 8, 2009 13:54 