CFD Online Discussion Forums

CFD Online Discussion Forums (
-   Main CFD Forum (
-   -   Boundary Condition for DNS (

saeedi October 29, 2011 22:50

Boundary Condition for DNS
Hi there,

I am simulating an incompressible turbulent wake flow (flow after a cylinder) by DNS, using implicit fractional step method. It is second order finite difference in a staggered grid.

I am facing a problem: after some iterations (more than 40,000) wich is twice the time of traveling from the begining of my domain to the end, the code starts diverging. it is because some fluctuation in pressure are accumulated at the outflow boundary. I tried Neumann and convective outflow boucndary condition at the outflow plane for velocity and Neumann for pressure.

Does any one know how to resolve the issue? I am almost sure it is because of the pressure boundary cindition.

Thank you,

happy October 29, 2011 23:51

Al salamo Alikom
as I know that the finite difference is old method with regard to finite element or volume. why you did not try one of them?
can I know which program you use to solve that problem ; for example, matlab or Fortran??

good luck

saeedi October 30, 2011 11:49


I am using energy conservative finite difference method wich is suitable for LES and DNS. I am using fortan in parallel environment which is parallelized with MPI and using a cluster coputer (super computer) to solve the problem.


happy October 30, 2011 21:52

could this help you
Hi again, I'm just inputting here citation from a book
A practice that is widely adopted for inflow boundaries is to set the transported quantities of either a uniform or some predetermined profile over the boundary surface (Dirichlet). For outflow boundaries the convective derivative normal to the boundary face is set equal to zero; the transported quantities at the boundaries are extrapolated along the stream-wise direction of the fluid flow (Neumann). However, the use of such an approach is not as straightforward in some selected applications. Some difficulties may arise during the implementation of such boundary conditions. For example,
nonphysical reflection of outgoing information back into the calculation domain (Giles, 1990) such as the fluid that may inadvertently re-enter the domain through these outflow boundaries as well as in regions of possible high swirl, large curvatures, or pressure gradients may significantly affect the convergence behavior of the iterative procedure.
In addressing some of these difficulties, the specification of radial equilibrium of a pressure field is deemed to be more preferable than the usual constant static pressure for swirling flows at an outlet. Also, when strong pressure gradients are present, special nonreflecting boundary conditions are sometimes required for the inflow and outflow boundaries (Giles, 1990).
from Computational Fluid Dynamics :A Practical Approach by Jiyuan

saeedi October 30, 2011 23:17

Assalamo alaykom,

Thanks. The book looks good. I will check it.

happy October 31, 2011 00:42

if you want the book just tell me
I can give you link to download this book. it is about the CFD solvers such as ANSYS.

saeedi October 31, 2011 00:48

That's kind of you.

Thank you

happy October 31, 2011 02:13

Here you are
Al salamo Alikom
I'm Phd student too. see below link now where the book is it and keep it on your computer because it will not be available for long time due to copyright!!!

do not forget me from Al dua.
before I leave see this
this website can help you to get most books in pdf form, just register there and then input you requests ( you should follow the rules there).

finally, can I see your code and do not scared from me because my reserach topic is deffernt. my research is about the 3D simulation of swirling flow!!!I seeked to conduct matlab code to solve my simulation in 3D and compressebale fluid!!:mad:
However, you may find some thing for me:D


saeedi October 31, 2011 13:44


Thanks for the link.

I am sorry I am not allowed to release the source code. It is a collabration of group of PHDs and Postdocs.

Good luck with your research.


s.k. November 6, 2011 21:54

Hi ,
I just read your discussion and as I have been working with DNS code, I faced with the same problm but on in outlet as I used NSCBC method in outlet. I have this reverse flow in inlet and it leads to convergence. Could you please let me know what kind of inlet boundary you used.


saeedi November 7, 2011 10:04


Thanks for your comment.
At the inlet I am just using simple Dirichlet B.C.
BTW. I do not know what NSCBC is.? Could you give more info.?


hnemati May 18, 2012 05:28

Centerline boundary conditon
1 Attachment(s)
Hi guys
I am working on DNS in a pipe.
I have a problem with the rms of radial and circumferential flactuation velocity near the centerline,i.e. see the figure.
May anybody help me?:confused:

PGodon May 23, 2012 12:52

Characteristics or Riemann Invariants
At the boundary, considering the velocity normal to the boundary, you have to write down the equations not for the primitive variables but for the characteristics of the flow (in one dimensional flows, these are the Riemann Invariants). The boundary conditions have to be imposed on the incoming characteristics, while the outgoing characteristics can be set to zero to avoid reflections of waves and numerical divergence.

see for example:

Abarbanel, S., Don, W.S., Gottlieb D., Rudy, D.H., Townsend, J.C., 1991, Journal of Fluid Mechanic, 225, 557

Givoli, D. 1991, Journal of Computational Physics, 94, 1

Gottlieb, D., Gunzburger, M., Turkel, E., 1982, SIAM, J. Numer. Anal. 19, 671

This is possibly the best way to have non-reflective boundary conditions and it is the correct mathematical way to impose conditions on the boundaries. Let me know if you have problems findings these references, I could give you a direct link to something similar on which I worked.

leflix June 13, 2012 18:44


Originally Posted by saeedi (Post 330007)
Hi there,

I tried convective outflow boucndary condition at the outflow plane for velocity and Neumann for pressure.


If convective outflow boundary conditions are:
du/dt +Uconv*du/dx=0
dv/dt +Uconv*dv/dx=0
where Uconv may be the mean velocity it should work !! so check your implementation. It is the best outflow BC ever found for incompressible flows. It avoids reflecting waves in the interior of domain and thus prevails from divergence of the code.

here d/dt and d/dx stand for partial derivatives.

All times are GMT -4. The time now is 00:15.