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

Problem in setting the values of k and omega

Register Blogs Community New Posts Updated Threads Search

Like Tree3Likes
  • 1 Post By Naruto
  • 1 Post By Artur
  • 1 Post By Artur

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   July 9, 2013, 07:19
Default Problem in setting the values of k and omega
  #1
Member
 
Join Date: Nov 2012
Posts: 62
Rep Power: 13
Naruto is on a distinguished road
Dear Foamers,
Hello. Currently I am using pimpleDyMFoam solver of OpenFOAM to simulate a 3-D wind turbine. The inlet wind velocity is 2.3 m/s and the rotational speed is around 120 deg/sec. The chord length of the blade is 0.2m and the span length is 2m.
I am having problems in setting up the value of k and omega. By careful investigation of the messages appearing in terminal I found out that there is something wrong with my k-omega settings. The value of omega is very unstable. I have used this http://www.cfd-online.com/Wiki/SST_k-omega_model thread for calculating turbulence model. I assumed a turbulence intensity of 4% and turbulent length scale of 0.07 times of chord length. Are my assumptions correct? I would really appreciate any kind of help. I studied the book of J.H. Ferziger and other basic fluid mechanics related books. Even if anyone could direct me to the right literature, this would be good enough for me.
immortality likes this.
__________________
Happy Foaming
Naruto is offline   Reply With Quote

Old   July 10, 2013, 08:02
Default
  #2
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 372
Rep Power: 20
Artur will become famous soon enough
Can you be a bit more clear as to what you mean by "omega value is very unstable"? Have you tried the guidelines in these links:

http://www.cfd-online.com/Wiki/Turbu...ary_conditions

http://www.cfd-online.com/Wiki/Turbulence_intensity

http://www.cfd-online.com/Wiki/Turbulent_length_scale
Artur is offline   Reply With Quote

Old   July 10, 2013, 11:59
Default
  #3
Member
 
Join Date: Nov 2012
Posts: 62
Rep Power: 13
Naruto is on a distinguished road
Thanks for your kind reply. Yes I followed the instructions carefully earlier. I set up the values of my k and omega on the basis of these links. But the provided literature described the pattern of k-omega model for very simple geometry. More importantly the pattern of the flow is not that complex. But in case of rotating turbine things get a little bit complicated. There will be two types of flow. One is simple inflow of incoming fluid. Another one is the large relative velocity of fluid around blades.

My question is do I need to setup two separate sets of values for k-omega? I mean: one for the incoming flow and another one is for the rotating blades. If so, then my question is how do I calculate the values of k-omega? That is what(setting two sets of values) I did today and the simulation got stable. Although I am always having high Courant number like 6-8.

My current simulation condition: inflow velocity= 5m/s
rotation speed= 240rpm
The settings of k and omega are shown below:
internalField uniform 0.011094; // turbulent intensity (3-5)% k=(3/2)*(UI)*(UI) U=5m/s

boundaryField
{
blade-1
{
type kqRWallFunction;
value uniform 0.103; // Different for blades
}
Rotor-AMI
{
type cyclicAMI;
value $internalField;
}
Rotor
{
type cyclicAMI;
value $internalField;
}
blade-3
{
type kqRWallFunction;
value uniform 0.103;
}
blade-2
{
type kqRWallFunction;
value uniform 0.103;
}
topAndBottom
{
type slip;
}
Stator-AMI
{
type cyclicAMI;
value $internalField;
}
Stator
{
type cyclicAMI;
value $internalField;
}
inlet
{
type fixedValue;
value $internalField;
}
sides
{
type slip;
}
outlet
{
type inletOutlet;
inletValue $internalField;
value $internalField;
}
}
and for omega
internalField uniform 0.0702; // omega =root (k)/ l l=turbulent length

boundaryField
{
blade-1
{
type omegaWallFunction;
value uniform 0.214;
}
Rotor-AMI
{
type cyclicAMI;
value $internalField;
}
Rotor
{
type cyclicAMI;
value $internalField;
}
blade-3
{
type omegaWallFunction;
value uniform 0.214;
}
blade-2
{
type omegaWallFunction;
value uniform 0.214;
}
topAndBottom
{
type slip;
}
Stator-AMI
{
type cyclicAMI;
value $internalField;
}
Stator
{
type cyclicAMI;
value $internalField;
}
inlet
{
type fixedValue;
value $internalField;
}
sides
{
type slip;
}
outlet
{
type inletOutlet;
inletValue $internalField;
value $internalField;
}
}

Are these settings correct?
Thank you
__________________
Happy Foaming
Naruto is offline   Reply With Quote

Old   July 10, 2013, 12:20
Default
  #4
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 372
Rep Power: 20
Artur will become famous soon enough
As far as I understand it, the k, omega and epsilon values specified on the body are just a starting point for the iteration and hence usually are set to the free stream value which is then changed by the solver. If you look at the propeller tutorial that's what it shows. I am currently running simulations of marine propellers using pimpleDyMFoam and following the same guidelines I am getting accurate results. The way I do it: assume characteristic length and turbulence intensity, compute the values using the equations you used and set it for the respective patches.

I've noticed that you specified a value for the AMI patches. I think it will break your case because you will have a fixed value there always. If you set it to 0, like this:

Code:
    AMI1
    {
        type            cyclicAMI;
        value           uniform 0;
    }
it should behave properly. (I set one of my simulations this way and it messed up the wake of my propeller)
Artur is offline   Reply With Quote

Old   July 10, 2013, 13:08
Default
  #5
Member
 
Join Date: Nov 2012
Posts: 62
Rep Power: 13
Naruto is on a distinguished road
Thank you very much. I will try your method. I am afraid if I am asking for too much. Could you please upload your '0' folder?
Again thanks.
__________________
Happy Foaming
Naruto is offline   Reply With Quote

Old   July 11, 2013, 04:09
Default
  #6
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 372
Rep Power: 20
Artur will become famous soon enough
Here it is. I don't guarantee that what is inside is completely correct but so far it seems to be working OK for me.
Attached Files
File Type: gz 0.tar.gz (1.1 KB, 38 views)
Naruto likes this.
Artur is offline   Reply With Quote

Old   July 11, 2013, 13:18
Default
  #7
Member
 
Join Date: Nov 2012
Posts: 62
Rep Power: 13
Naruto is on a distinguished road
Thank you very much. Currently my simulation is working fine. But the problem is time step got very small i.e. 6e-06. But I guess it is ok.

I want to ask you one more question. I know it is kind of basic and childish. But still I am asking for assurance. Currently my terminal window is showing two sets of forces- pressure (x,y,z) and viscous (x,y,z) force.

The axis of rotation is z-axis. Now if I want to calculate the power it should be like= (root(pressure(x)*pressure(x)+ viscous(x)*viscous(x)))* radius of the turbine* omega (rad/sec). Is this correct?
__________________
Happy Foaming
Naruto is offline   Reply With Quote

Old   July 12, 2013, 04:09
Default
  #8
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 372
Rep Power: 20
Artur will become famous soon enough
P = omega*Q = 2*pi*rps*(sum of moments around the axis of rotation)

The first ((val,val,val),(val,val,val)) is forces (pressure and viscous) and the second bracket like that is moments around the principle axes (x,y,z) due to pressure and viscous forces, respectively. So if z is your axis of rotation you need to take the 3rd value from the brackets in the 2nd set. So your expression is partially correct but there is no need for taking the mean square of forces.

If your time step is very low you may want to try increasing your maxCo (Courant number) in the controlDict. Be warned though, if this gets too high your solution will diverge and probably crash :P I usually go for something like 1.5 - 2.0 for the first few hundred time steps and then ramp it up slowly to about 3.0 - 3.5, sometimes more depending on other settings I use.
Naruto likes this.
Artur is offline   Reply With Quote

Old   July 12, 2013, 09:33
Default
  #9
Member
 
Join Date: Nov 2012
Posts: 62
Rep Power: 13
Naruto is on a distinguished road
Thank you very much. Your guidance is helping me a lot. I have one last question. In my controldict file I found out that maxCo is set to 2. How could I increase it slowly after some time steps?
Thanks again for sparing your precious time.
__________________
Happy Foaming
Naruto is offline   Reply With Quote

Old   July 12, 2013, 09:38
Default
  #10
Senior Member
 
Artur's Avatar
 
Artur
Join Date: May 2013
Location: Southampton, UK
Posts: 372
Rep Power: 20
Artur will become famous soon enough
if you have the runtime modifiable option set to on in the controlDict file (I think most tutorial cases have that by default) you can simply edit the file while the simulation is running and save it. The solver will detect that file has been modified and re-read it and update the control parameter values.
Artur is offline   Reply With Quote

Reply


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
Problem with K omega boundary conditions malaboss OpenFOAM Pre-Processing 6 April 20, 2015 00:25
convergence problem / bluff body / k omega LM4112 OpenFOAM Pre-Processing 3 June 16, 2013 07:28
problem from k epsilon to k omega NJG OpenFOAM Running, Solving & CFD 0 April 15, 2013 09:24
k omega values mihaipruna OpenFOAM Running, Solving & CFD 0 November 8, 2012 10:41
Values of k and omega at the wall oldah FLUENT 2 February 22, 2008 04:08


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