CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Problem in simpleFoam airFoil2D forceCoeffs (https://www.cfd-online.com/Forums/openfoam-solving/102863-problem-simplefoam-airfoil2d-forcecoeffs.html)

reza1111 July 10, 2013 08:24

Hi.
I'am going to simulate a flow around NACA0009 at 5 degree AOA. I used simpleFoam solver and my setup is same as the airfoil2D tutorial. when i get the result, the forces and forceCoeffs are too less than I expected. the ratio of the forces compare with Fluent results are 1:25. I know this is weird. and I guess I did something wrong. I have done the case using Fluent and the results were good.
Please give me some hints.
Thanks

Rafael_Coelho July 22, 2013 17:28

I just re-installed Openfoam and will run the airfoil case as a benchmark. Will post some results late this week.

Rafael_Coelho July 28, 2013 04:33

I just ran the airFoil2D case and I got the following results:

forceCoeffs output:
Cm = -15.2719
Cd = -0.231827
Cl = 1.85603
Cl(f) = -14.3439
Cl(r) = 16.2

After 350 interactions.

Rafael_Coelho July 28, 2013 04:52

Changing the liftDir and dragDir as suggested by tcarrigan:

functions
{
forces
{
type forceCoeffs;
functionObjectLibs ( "libforces.so" );
outputControl timeStep;
outputInterval 1;

patches ( wall );
pName p;
UName U;
rhoName rhoInf;
log true;
rhoInf 1.225;
liftDir (-0.139173 0.990268 0);
dragDir (0.990268 0.139173 0);
pitchAxis (0 0 1);
magUInf 26;
lRef 1;
Aref 1;
}
}


I got the following Cl and Cd:

forceCoeffs output:
Cm = -15.2719
Cd = 0.0287385
Cl = 1.87023
Cl(f) = -14.3368
Cl(r) = 16.2071

My question now is: How did you (tcarrigan) get those values for liftDir and dragDir?????

wes1204 October 14, 2013 03:46

hi all
 
hi all

I am also facing to same problem.

my case is 2d wind flow around bridge deck.

experimental data is
Cd = 0.245
Cl = 0.028

but my openfoam results were calculated as 0.002, 0.001...
the order of coefficients is quite different to experimental data.

so I did it myself using pressure field.

I extracted pressure value from paraview after slicing mesh to obtain 2d value.
then, I got Force components,generating Normal component of surface and integrating.

this values are almost similar to experimental data
Cd : 0.224
Cl : 0.001

but to do this, I should waste my time and large storage since Values should be 1000Hz.

I dont know why openfoam output is wrong.

my code is same to yours.

functions
{
forces
{
type forces;
functionObjectLibs ( "libforces.so" ); // lib to load
outputControl timeStep;
outputInterval 1;
patches
( bridge ); // change to your patch name

// name of fields
pName p;
UName U;
log true; // dump to file
rhoName rhoInf;
rhoInf 1.25;
CofR ( 2.3 0.7569 0 );
log on;
}
forcesCoeffs
{
type forceCoeffs;
functionObjectLibs ( "libforces.so" );
outputControl timeStep;
outputInterval 1;
patches
(
bridge );

pName p;
UName U;
log true;
rhoName rhoInf;
rhoInf 1.25;
CofR ( 2.3 0.7569 0 );
liftDir ( 0 1 0 );
dragDir ( 1 0 0 );
pitchAxis ( 0 0 1 );
magUInf 10;
lRef 0.353;
Aref 0.353;
}
}

If you guys solved this problem, please help me

Rafael_Coelho October 14, 2013 04:10

Check your liftdir and dragdir axis. It depends on your geometry.

wes1204 October 14, 2013 05:50

thanks
 
Quote:

Originally Posted by Rafael_Coelho (Post 456762)
Check your liftdir and dragdir axis. It depends on your geometry.

Rafael Coelho
thank you for reply

in my case, inlet is left side, outlet is right side and top and bottom is wall,
of course, front and back is empty for 2d.

the object is a deck of bridge so I think directions of drag and lift is right.

I don't know what the problem is.....

anyway thank you for your reply

reza1111 October 14, 2013 14:51

Hi Baek

with using checkMesh check the depth of your geometry.
using with fluent in 2d cases the depth be considered a unite. while in OF cases it depends on the depth of your 3d geometry . so the length of the cell in z direction will affect the reference values.

good luck!

wes1204 October 17, 2013 08:03

Thanks
 
Quote:

Originally Posted by reza1111 (Post 456913)
Hi Baek

with using checkMesh check the depth of your geometry.
using with fluent in 2d cases the depth be considered a unite. while in OF cases it depends on the depth of your 3d geometry . so the length of the cell in z direction will affect the reference values.

good luck!

Hi reza

Thank you for your advise.

I think that this problem is almost sloved.

my case is 2D on x-y plane and z direction has 0.01 length. (5x1.5x0.01)

first, I divided force by z length(0.01).
after that, I calculated Cd,Cl directly using F/(1/2)*rho*U^2*L
finally I got
Cd : 0.29
Cl : 0.1853

observation data in experiment is
Cd: 0.21
Cl: 0.028

Cd is almost similar to observation data but Cl is quite differnt.
I guess that the reason why Cl is quite diffent is due to geometry.

My geometry was simplified quite much.

Thank you for your advise
and I appreciate for Rafael_Coelho's advise

giammy92 March 18, 2016 08:01

Quote:

Originally Posted by tcarrigan (Post 371121)
You have the x-component of the lift direction backwards, should be -sin(alpha). And the y-component of drag should be sin(alpha).

For the airfoil2D example I get the following results:
Cd = 0.0288648
Cl = 1.86931


Sorry but for airfoil2D example I have U (25.75 3.62 0) and therfore an angle of attack of 8°. So, i have liftdir (-sin8 cos8 0) but because the direction of drag is the opposite of flux i think that dragdir (-cos8 -sin8 0). What do you think about?

giammy92 March 18, 2016 08:04

Quote:

Originally Posted by tcarrigan (Post 371189)
lRef is a reference length and Aref is a reference area. These values are used to compute the coefficients of lift, drag, and pitching moment. Because this is a 2D case and the airfoil has a unit length, therefore, lRef=1 and Aref=1. If this were a 3D calculation, lRef would be something like the mean chord length and Aref could be wing area.

To get Cl there is no need to extract Cp and sum them up for a total lift coefficient. By setting up the appropriate reference values in the forceCoeffs (like below), OpenFOAM will compute Cl for you.

I believe the AOA for the airfoil2D exampel is 8deg. Here are the reference values I used:

forces
{
type forceCoeffs;
functionObjectLibs ( "libforces.so" );
outputControl timeStep;
outputInterval 1;

patches ( wall );
pName p;
UName U;
rhoName rhoInf;
log true;
rhoInf 1.225;
liftDir (-0.139173 0.990268 0);
dragDir (0.990268 0.139173 0);
pitchAxis (0 0 1);
magUInf 26;
lRef 1;
Aref 1;
}

Sorry but for airfoil2D example I have U (25.75 3.62 0) and therfore an angle of attack of 8°. So, i have liftdir (-sin8 cos8 0) but because the direction of drag is the opposite of flux i think that dragdir (-cos8 -sin8 0). What do you think about?

mhd_mrt March 11, 2017 21:56

Quote:

Originally Posted by giammy92 (Post 590429)
Sorry but for airfoil2D example I have U (25.75 3.62 0) and therfore an angle of attack of 8°. So, i have liftdir (-sin8 cos8 0) but because the direction of drag is the opposite of flux i think that dragdir (-cos8 -sin8 0). What do you think about?

Hi giammy92,

That is not true. If you refer to the famous textbook of Fundamentals of Aerodynamics by Anderson, in chapter 1 you will see that
LiftDir: [-sin(a) cos(a) 0]
DragDir: [cos(a) sin(a) 0]

Also, I agree with Reza, in OpenFOAM it does matter the depth in z-direction(unlike in Fluent), as the forces are essentially divided by lRef. For the Airfoil2D case I get the following results for cm, cd, cl respectively:
iter:350
Cm:-1.528235e+01
CD:2.858215e-02
CL:1.871433e+00


All times are GMT -4. The time now is 23:26.