I have been working with an old code for modeling incompressible, 2D viscous flow out of a tank to understand a chemical process. There isn't much documentation and I'm not a fluid dynamicist, so I have been trying to check that things are working as they should by comparing results with those from another code. The comparison is great when I use a velocity inlet condition. However, there is a major discrepancy when I use a pressure inlet condition. In both cases, the outlet pressure is zero.

I have spent several weeks trying to figure out what the problem is with the pressure inlet condition (and have an active question about it) because I have pressure inlet values that I want to use in my problem. I don't know velocity inlet values. But I have to acknowledge I've hit a wall with figuring out my pressure inlet boundary condition problem.

This may be a dumb question, but I would really appreciate it if someone would help me confirm if I can transform my pressure values into an inlet velocity condition. If I can, maybe I can simply use an inlet velocity and my problems will be over!

I understand that: $$P = \dfrac{1}{2}\rho U^2 + \rho gz$$

where $\rho$ is fluid density, $U$ is velocity, $g$ is the acceleration of gravity, and $z$ is depth of the tank inlet below the tank outlet at 0.

So if I simply plug in my inlet pressure value and rearrange, will I get a valid inlet velocity that I can use for a velocity boundary condition? My concern is that I'm dealing with viscous flow and I think this expression is related to the Bernoulli equation, which does not account for viscous flow.

If I'm right and I can't use this expression to calculate an inlet velocity, does anyone know if there's an alternative?

The reason I say I probably can't is that I've tried it and the results from the two codes don't match. I'm just trying to figure out where my problem is--if it's likely to be a bug in one of the codes, which code is the problem, or if I'm making some mistake when inputting my boundary condition values.

  • $\begingroup$ If I remember correctly, Bernoulli's equation assumes the flow is inviscid (ie no viscosity) which may not be valid for your problem, how viscous is your fluid? It also seems as though you have ignored any frictional losses in your problem? $\endgroup$ Commented Apr 28, 2016 at 8:54
  • $\begingroup$ Thanks for your input, CleptoMarcus. Yes, that's why I'm worried. In my very simple beginning example, I'm using a viscosity of only 1 Pa s, but in general, my fluid can have a very wide range of viscosity. So I can't assume it is inviscid. This is where I'm running up against my poor fluid dynamics background... I don't know if it would be valid at a boundary to assume this simple relationship holds or not. I have searched around online, but have not come across any examples of where people have translated a P boundary condition to velocity for viscous fluid. Maybe it can't be done. $\endgroup$
    – Ant
    Commented Apr 28, 2016 at 9:03
  • $\begingroup$ I forgot to add that I don't expect frictional losses to be important compared to the viscosity. $\endgroup$
    – Ant
    Commented Apr 28, 2016 at 9:34
  • $\begingroup$ Well it would certainly be possible to solve using Navier-Stokes but high viscosity problems are reasonably rare and so there aren't many simplified relationships. It may be possible to simplify Navier-Stokes down if flow is laminar, if it is turbulent your best bet would be to hope that someone has created an empirical relationship that is suitable for your particular problem. TBH this likely exceeds my fluid mechanics knowledge so I will be interested if you get a good answer to this $\endgroup$ Commented Apr 28, 2016 at 10:35
  • $\begingroup$ Thanks, CleptoMarcus. Yes, both codes are based on Navier-Stokes. My fundamental problem is that I can't get their results to match when I use a pressure inlet condition. One of the codes uses a non-dimensionalized form of N-S, so I need to scale the pressure inlet value accordingly (this is what my other active question is about). I just can't come up with a scaled pressure that is low enough to match the results from the other code--and I'm starting with a very simple problem (laminar)--although I eventually want to increase the complexity of the problem. $\endgroup$
    – Ant
    Commented Apr 28, 2016 at 10:46

1 Answer 1


It's difficult to tell how your problem should be approached with the information that you provide, for example in what sense you find a discrepancy. I assume your system is as you described in the question "Incompressible 2D pressure-driven flow: for Navier-Stokes equations in nondimensional form, how should I express pressure boundary conditions?", with the picture that I copy at the bottom of this post.

The flow is upwards. Normally, the way to replace a velocity boundary condition by a pressure boundary condition is by trial and error until you have the pressure that will generate the same average velocity over your inlet plane. If that is what you did, but you found a different pressure than with the other calculation method, then something is wrong with at least one of the calculation methods and you have to a systematic comparison between the two models, checking all parameters that you can plot and figure out which fundamental parameter is wrong. For example, you could have forgotten to switch on the effect of gravity in one of the codes.

If your question is: how do I calculate the pressure to set at the inlet from just the viscosity and a given inlet velocity, then you are using the wrong approach. The pressure at the inlet will be the result of two contributions: gravity ($P_g=\rho g h$) and flow resistance at the outlet pipe. For that, you need to take the hydraulic diameter $D_H=2a$ of the outlet pipe, get the average outlet velocity $U_o$ and calculate the Reynolds number, $\mathit{Re}=\rho U_o D_H/\eta$. The pressure drop at the outlet will generally have several contributions:

  • Bernoulli: $\Delta p=b\rho U_o^2/2$, where $b$ is a factor to account for the velocity profile of the fluid at the outlet; $b=1$ for a uniform velocity and $b=2$ (I think) for a parabolic velocity profile. This is sometimes called: "exit loss".

  • Friction along the pipe length, also called "major loss": $$ \Delta p_{\mathrm{major}}={fL\over D_H} {\rho U_o^2\over 2}, $$ where $f$ is the Darcy-Weisbach friction factor, which depends on the Reynolds number.

  • Inlet loss, also called "minor loss", $$ \Delta p_{\mathrm{minor}} = \xi{\rho U_o^2\over 2}, $$ where $\xi$ is the minor loss coefficient.

Tabulated values for all these losses in various pipe geometries are in Idelchik, Handbook of Hydraulic Resistance (warning: 21 MB download).

I don't know what happens inside your vessel, but if you're only interested in the relation between flow rate and pressure, I wouldn't even bother with trying to run a CFD code.

flow schematic


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.