CFD Online Discussion Forums

CFD Online Discussion Forums (
-   Main CFD Forum (
-   -   mass flux correction at outflow boundaries (

Subhra Datta November 23, 2003 20:56

mass flux correction at outflow boundaries
Hi , can you help me with some info/reference on "global mass flux correction" at outflow boundaries and implementing bcs on "pressure" for incompressible flow.

What exactly is mass flux correction at outflow boundaries and how should be it implemented in a code in addition to diffusive fluxes normal to boundary being made zero..i.e.

Pl. suggest BRIEF STEPS IN ALGO or some reference...

Fluent (as mentioned in its user manual) and a code by Peric and Ferziger seems to be using this at OUTFLOW boundaries.Although I falied to make out from the code by Peric the readme file of Fortran code by Peric at says :

"..Also, there is a global correction of mass fluxes at the outlet boundary to make them satisfy the global mass conservation, before solving the pressure-correction equation. When this is done, one can assume in the pressure-correction equation that the mass fluxes are prescribed at all boundaries and therefore need not be corrected, leading to Neumann boundary conditions for pressure correction at all boundaries."

I am using a Fortran program program that uses control volume discretization and simple algorithm for flow solution on a staggered u-v grid. It follows the conventions and development pattern suggested in "Numerical heat transfer and fluid flow" by Patankar. Originally the domain was an enclosure but I am making it one with inflow and outflow boundaries,the domain has obstruction inside but near inlet and outlet it is a developed channel flow.

Currently I have made first derivative of all quantities including pressure and pressure correction(p') equal to zero at outflow boundary but I suspect their correctness.

What are the correct BCs to the presssure correction equation and to pressure if both my inflow and outflow boundary lies in a region of fully developed flow in a channel?

Halim Choi November 24, 2003 00:32

Re: mass flux correction at outflow boundaries
For a three-dimensional incompressible flow in a Cartesian grid, the treatment of overall conservation is done as follows (assume inlet and oulet exist in a x-direction (U-velocity) only);



DO 101 J= 2,M2

DO 101 K= 2,N2 101 FLOWIN= FLOWIN+U(2,J,K)*YCV(J)*ZCV(K)


DO 200 J= 2,M2



DO 201 J= 1,M2

DO 201 K= 1,N2

W(L1,J,K)= W(L2,J,K)

V(L1,J,K)= V(L2,J,K) 201 U(L1,J,K)= U(L2,J,K)*RR


where YCV and ZCV are the sizes of control volumes and L2=L1-1, M2=M1-1, and N2=N1-1. You should call OVERCON after you solve the momentum equations. If the density is not constant, you should multiply density when you calculate FLOWIN and FLOWOUT.

If there are multiple oulets, above treatment usually does not work, and you can use the pressure boundary boudary condition. The implementation of the pressure boundary contion requires a rather complicated programming.

I am not sure this is exactly what you want, but I hope this helps.

Halim Choi

Subhra Datta November 24, 2003 14:11

global conservation
Thanks Mr. Choi for the subroutine...I will implement this in my code....this will enable me to get a true pressure field..

I was just wondering if I do not violate conservaion in each cv is that sufficient to make rr tend to 1 as SIMPLE iterations progress....or some more care reqd.

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