CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Post-Processing (
-   -   Force on a patch (

danvica March 14, 2012 01:33

Force on a patch
2 Attachment(s)
I need to calculate the force caused by the flow on a patch.

In the first picture you can see the result of the simpleFoam solver. In the second there's the patch I want to calculate Fx on.

I tried in Parafoam to integrate pressure on the surface but maybe I miss something (BTW, is there a tutorial regarding this managements ?)

Another simple question: p for incompressible solver is actually divided by density.
That means that the real pressure at the end has to be multiplied by density, right ?


danvica March 14, 2012 04:04

Probably I should have posted this under the parafoam forum. Is there any way to move it by me ?

Anyway, I tried the following in Parafoam:

1. Select the above patch.
2. Generate surface normals.
3. Use calculator to define a new var called Px defined as
p*N_x*1000. (where 1000 is density of water).
4. Integrate Px on the surface.

Is it correct ? The obtained value is in Newton, right ?

danvica March 15, 2012 02:42

Another way, more flexible is to use the libforces library as follow:


type forces;
functionObjectLibs (""); //Lib to load
patches (pisto); // change to your patch name
pName p;
Uname U;
rhoName rhoInf;
rhoInf 1000;
CofR (0 0 0); //Origin for moment calculations
outputControl timeStep;
outputInterval 5;

I'm interested in the Fx value and it seems quite the same, compared with the one obtained by parafoam (see prev post).
Just a confirmation: is it right ?


Aurelien Thinat March 15, 2012 05:54

Hi Daniele,

Yes it is. Just modify the CoR (center of reference) if you want the values of Mx My and Mz.
There is also a "forceCoeffs" function for Cx Cy and Cz calculations.


All times are GMT -4. The time now is 19:36.