CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM

How to find separation point over airfoil

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   April 10, 2013, 10:36
Default How to find separation point over airfoil
  #1
New Member
 
Leo
Join Date: Jan 2013
Location: Duisburg,Germany
Posts: 3
Rep Power: 13
oscarli is on a distinguished road
Dear all,

I'm relatively new to OpenFOAM and as a part of my MSc-thesis I am trying to simulate flow field over a naca arifoil in OpenFOAM.

Now I'm having trouble to find where is the flow separation point in my simulation. I'm working with a 2D geometry.
I have got some useful information here and done some work: I modified the simpleFoam solver in OpenFOAM to get the velocity gradient or pressure gradient, but I can not figure out where is my mistake to get the good result.

This is what I have modified from simpleFoam solver(in red color) and I have compiled the modified solver after the change.
createFields.H
Quote:
Info<< "Reading field p\n" << endl;
volScalarField p
(
IOobject
(
"p",
runTime.timeName(),
mesh,
IOobject::MUST_READ,
IOobject::AUTO_WRITE
),
mesh
);

Info<< "Reading field U\n" << endl;
volVectorField U
(
IOobject
(
"U",
runTime.timeName(),
mesh,
IOobject::MUST_READ,
IOobject::AUTO_WRITE
),
mesh
);

Info<< "Reading field GradU\n" << endl;
volTensorField GradU
(
IOobject
(
"GradU",
runTime.timeName(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
fvc::grad(U) //mesh
);

// Info<< "Reading field Gradp\n" << endl;
// volVectorField Gradp
// (
// IOobject
// (
// "Gradp",
// runTime.timeName(),
// mesh,
// IOobject::NO_READ,
// IOobject::AUTO_WRITE
// ),
// fvc::grad(p) //mesh
// );

#include "createPhi.H"


label pRefCell = 0;
scalar pRefValue = 0.0;
setRefCell(p, mesh.solutionDict().subDict("SIMPLE"), pRefCell, pRefValue);

singlePhaseTransportModel laminarTransport(U, phi);

autoPtr<incompressible::RASModel> turbulence
(
incompressible::RASModel::New(U, phi, laminarTransport)
);

IObasicSourceList sources(mesh);
Here is the detail: naca0015 airfoil, simpleFoam solver , kOmegaSST model
0 folder:

U
Quote:
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.1.1 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volVectorField;
object U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 1 -1 0 0 0 0];

internalField uniform (0.9848 0.1736 0);

boundaryField
{
inlet
{
type fixedValue;
value $internalField;
}

outlet
{
type inletOutlet;
inletValue uniform (0 0 0);
value $internalField;
}

"airfoil.*"
{
type fixedValue;
value uniform (0 0 0);
}

defaultFaces
{
type empty;
}
}

//
p
Quote:
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 2 -2 0 0 0 0];

internalField uniform 0;

boundaryField
{
inlet
{
type zeroGradient;
}

outlet
{
type fixedValue;
value uniform 0;
}

"airfoil.*"
{
type zeroGradient;
}

defaultFaces
{
type empty;
}
}

// ************************************************** *********************** //
omega
Quote:
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object omega;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 0 -1 0 0 0 0];

internalField uniform 9.8;

boundaryField
{
inlet
{
type fixedValue;
value uniform 9.8;
}
outlet
{
type inletOutlet;
inletValue uniform 9.8;
value uniform 9.8;
}
airfoil
{
type omegaWallFunction;
Cmu 0.09;
kappa 0.41;
E 9.8;
beta1 0.075;
value uniform 9.8;
}
defaultFaces
{
type empty;
}
}


// ************************************************** *********************** //
nut
Quote:
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object nut;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 2 -1 0 0 0 0];

internalField uniform 0;

boundaryField
{
inlet
{
type calculated;
value uniform 0;
}
outlet
{
type calculated;
value uniform 0;
}
airfoil
{
type nutkWallFunction;
Cmu 0.09;
kappa 0.41;
E 9.8;
value uniform 0;
}
defaultFaces
{
type empty;
}
}


// ************************************************** *********************** //
k
Quote:
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object k;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 2 -2 0 0 0 0];

internalField uniform 0.00375;

boundaryField
{
inlet
{
type fixedValue;
value uniform 0.00375;
}
outlet
{
type inletOutlet;
inletValue uniform 0.00375;
value uniform 0.00375;
}
airfoil
{
type kqRWallFunction;
value uniform 0.00375;
}
defaultFaces
{
type empty;
}
}
// ************************************************** *********************** //
blockMeshDict
Quote:
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.1.1 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object blockMeshDict;
}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
convertToMeters 1.00;


vertices
(
( -4.700000 0.0000 0.00 ) //Pt 0
( -2.342151 -4.2449 0.00 ) //Pt 1
( 5.055282 -1.5451 0.00 ) //Pt 2
( 5.055282 1.5451 0.00 ) //Pt 3
( -2.342151 4.2449 0.00 ) //Pt 4
( 0.300000 0.0750 0.00 ) //Pt 5
( 0.000000 0.0000 0.00 ) //Pt 6
( 0.300000 -0.0750 0.00 ) //Pt 7
( 0.900000 -0.0181 0.00 ) //Pt 8
( 0.900000 0.0181 0.00 ) //Pt 9
( -4.700000 0.0000 0.10 ) //Pt 10
( -2.342151 -4.2449 0.10 ) //Pt 11
( 5.055282 -1.5451 0.10 ) //Pt 12
( 5.055282 1.5451 0.10 ) //Pt 13
( -2.342151 4.2449 0.10 ) //Pt 14
( 0.300000 0.0750 0.10 ) //Pt 15
( 0.000000 0.0000 0.10 ) //Pt 16
( 0.300000 -0.0750 0.10 ) //Pt 17
( 0.900000 -0.0181 0.10 ) //Pt 18
( 0.900000 0.0181 0.10 ) //Pt 19
);

blocks
(
hex ( 0 1 7 6 10 11 17 16) ( 26 50 1) simpleGrading ( 10.0000 0.0010 1)
hex ( 1 2 8 7 11 12 18 17) ( 49 50 1) simpleGrading ( 0.1000 0.0010 1)
hex ( 2 3 9 8 12 13 19 18) ( 80 50 1) simpleGrading ( 1.0000 0.0010 1)
hex ( 3 4 5 9 13 14 15 19) ( 49 50 1) simpleGrading ( 10.0000 0.0010 1)
hex ( 4 0 6 5 14 10 16 15) ( 26 50 1) simpleGrading ( 0.1000 0.0010 1)
);

edges
(
polyLine 6 7 (
( 0.0125 -0.0237 0.0000 )
( 0.0250 -0.0327 0.0000 )
( 0.0500 -0.0444 0.0000 )
( 0.0750 -0.0525 0.0000 )
( 0.1000 -0.0585 0.0000 )
( 0.1500 -0.0668 0.0000 )
( 0.2000 -0.0717 0.0000 )
( 0.2500 -0.0743 0.0000 )
)
polyLine 16 17 (
( 0.0125 -0.0237 0.1000 )
( 0.0250 -0.0327 0.1000 )
( 0.0500 -0.0444 0.1000 )
( 0.0750 -0.0525 0.1000 )
( 0.1000 -0.0585 0.1000 )
( 0.1500 -0.0668 0.1000 )
( 0.2000 -0.0717 0.1000 )
( 0.2500 -0.0743 0.1000 )
)
polyLine 7 8 (
( 0.4000 -0.0725 0.0000 )
( 0.5000 -0.0662 0.0000 )
( 0.6000 -0.0570 0.0000 )
( 0.7000 -0.0458 0.0000 )
( 0.8000 -0.0328 0.0000 )
)
polyLine 17 18 (
( 0.4000 -0.0725 0.1000 )
( 0.5000 -0.0662 0.1000 )
( 0.6000 -0.0570 0.1000 )
( 0.7000 -0.0458 0.1000 )
( 0.8000 -0.0328 0.1000 )
)
polyLine 9 8 (
( 1.0000 0.0016 0.0000 )
) // trailing edge
polyLine 19 18 (
( 1.0000 -0.0016 0.1000 )
) // trailing edge
polyLine 9 5 (
( 0.8000 0.0328 0.0000 )
( 0.7000 0.0458 0.0000 )
( 0.6000 0.0570 0.0000 )
( 0.5000 0.0662 0.0000 )
( 0.4000 0.0725 0.0000 )
)
polyLine 19 15 (
( 0.8000 0.0328 0.1000 )
( 0.7000 0.0458 0.1000 )
( 0.6000 0.0570 0.1000 )
( 0.5000 0.0662 0.1000 )
( 0.4000 0.0725 0.1000 )
)
polyLine 5 6 (
( 0.2500 0.0743 0.0000 )
( 0.2000 0.0717 0.0000 )
( 0.1500 0.0668 0.0000 )
( 0.1000 0.0585 0.0000 )
( 0.0750 0.0525 0.0000 )
( 0.0500 0.0444 0.0000 )
( 0.0250 0.0327 0.0000 )
( 0.0125 0.0237 0.0000 )
)
polyLine 15 16 (
( 0.2500 0.0743 0.1000 )
( 0.2000 0.0717 0.1000 )
( 0.1500 0.0668 0.1000 )
( 0.1000 0.0585 0.1000 )
( 0.0750 0.0525 0.1000 )
( 0.0500 0.0444 0.1000 )
( 0.0250 0.0327 0.1000 )
( 0.0125 0.0237 0.1000 )
)
arc 0 1 (-4.070970 -2.427885 0.000000 )
arc 10 11 (-4.070970 -2.427885 0.100000 )
arc 1 2 ( 0.300000 -5.000000 0.000000 )
arc 11 12 ( 0.300000 -5.000000 0.100000 )
arc 2 3 ( 5.300000 0.000000 0.000000 )
arc 12 13 ( 5.300000 0.000000 0.100000 )
arc 3 4 ( 0.300000 5.000000 0.000000 )
arc 13 14 ( 0.300000 5.000000 0.100000 )
arc 4 0 (-4.070970 2.427885 0.000000 )
arc 14 10 (-4.070970 2.427885 0.100000 )
polyLine 4 5 (
( 0.3000 0.3875 0.0000 )
)
polyLine 14 15 (
( 0.3000 0.3875 0.1000 )
)
polyLine 1 7 (
( 0.3000 -0.3875 0.0000 )
)
polyLine 11 17 (
( 0.3000 -0.3875 0.1000 )
)
polyLine 9 3 (
( 0.9614 0.1473 0.0000 )
) // trailing edge
polyLine 19 13 (
( 0.9614 0.1473 0.1000 )
) // trailing edge
polyLine 8 2 (
( 0.9614 -0.1473 0.0000 )
) // trailing edge
polyLine 18 12 (
( 0.9614 -0.1473 0.1000 )
) // trailing edge
);

patches
(
patch inlet
(
( 4 14 10 0 )
( 0 10 11 1 )
)
patch outlet
(
( 1 11 12 2 )
( 2 12 13 3 )
( 3 13 14 4 )
)
wall airfoil
(
( 5 15 16 6 )
( 6 16 17 7 )
( 7 17 18 8 )
( 8 18 19 9 )
( 9 19 15 5 )
)
);

mergePatchPairs
(
);

//* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Any help would be MUCH appreciated!

Best regards
Leo
Attached Files
File Type: txt RASProperties.txt (950 Bytes, 6 views)
File Type: txt transportProperties.txt (944 Bytes, 4 views)
File Type: txt controlDict.txt (1.8 KB, 9 views)
File Type: txt fvSchemes.txt (1.4 KB, 7 views)
File Type: txt fvSolution.txt (2.3 KB, 6 views)

Last edited by oscarli; April 11, 2013 at 04:26.
oscarli is offline   Reply With Quote

Old   April 10, 2013, 11:44
Default
  #2
Senior Member
 
fumiya's Avatar
 
Fumiya Nozaki
Join Date: Jun 2010
Location: Yokohama, Japan
Posts: 266
Blog Entries: 1
Rep Power: 18
fumiya is on a distinguished road
The wall shear stress vanishes at separation points and you can calculate
the wall shear stress using wallShearStress utility.
The thread (http://www.cfd-online.com/Forums/ope...omponents.html) could be of help.

Hope this helps,
Fumiya
fumiya is offline   Reply With Quote

Old   April 12, 2013, 03:25
Default
  #3
New Member
 
Leo
Join Date: Jan 2013
Location: Duisburg,Germany
Posts: 3
Rep Power: 13
oscarli is on a distinguished road
Hi Fumiya,

Thank you very much for your reply. I will try the wallShearStress utility.



Quote:
Originally Posted by fumiya View Post
The wall shear stress vanishes at separation points and you can calculate
the wall shear stress using wallShearStress utility.
The thread (http://www.cfd-online.com/Forums/ope...omponents.html) could be of help.

Hope this helps,
Fumiya
oscarli is offline   Reply With Quote

Old   April 12, 2013, 05:08
Default
  #4
New Member
 
Leo
Join Date: Jan 2013
Location: Duisburg,Germany
Posts: 3
Rep Power: 13
oscarli is on a distinguished road
Hi Fumiya,

I'v got something seems good. Is that right? I'v put the results in attach files.
Thank you very much.
Attached Images
File Type: jpg sp.jpg (12.4 KB, 236 views)
File Type: jpg sp1.jpg (14.9 KB, 211 views)
oscarli is offline   Reply With Quote

Reply

Tags
pressure gradient, separation point, velocity gradient


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
OpenFOAM 1.6-ext git installation on Ubuntu 11.10 x64 Attesz OpenFOAM Installation 45 January 13, 2012 12:38
Problem Building OF on Centos cluster (no admin rights) CKH OpenFOAM Installation 5 November 13, 2011 06:32
NO STAGNATION POINT FOR AIRFOIL SIMULATION Rif Main CFD Forum 6 February 4, 2008 07:33
Errors running allwmake in OpenFOAM141dev with WM_COMPILE_OPTION%3ddebug unoder OpenFOAM Installation 11 January 30, 2008 20:30
Where can find airfoil data with pressure distribution or aerodynamic data Ahlo Main CFD Forum 5 January 12, 1999 22:45


All times are GMT -4. The time now is 02:09.