CFD Online Logo CFD Online URL
Home > Forums > OpenFOAM Running, Solving & CFD

Rotor Torque Prediction

Register Blogs Members List Search Today's Posts Mark Forums Read

LinkBack Thread Tools Display Modes
Old   August 20, 2013, 13:19
Default Rotor Torque Prediction
Jason Dale
Join Date: Mar 2009
Location: UK
Posts: 65
Rep Power: 8
jason is on a distinguished road
Dear Forum,

I am studying a hydropower turbine using pimpleDyMFoam and AMI. A quick sketch of the setup is attached, however, this is just a simple model to replicate my larger problem.

I know that the fluid acting on the rotor will cause it to rotate anticlockwise around the x-axis when viewed along the positive x axis from the origin as shown, until the rotor reaches a certain free rotation speed, at which point the net torque on the rotor will be zero (Mxx = 0). A pressure plot is included indicating the high pressures on one side of the blades. As the rotor rotates faster and faster in the fluid the relative velocity between the moving fluid and the rotor blade surface will tend towards zero and thus the dynamic pressure created at the blade will tend to zero. To account for these moving blades I have additionally used the rotatingWall boundary condition.

When I run the solver in ‘locked’ mode, ie I specify zero rotation of the rotor in the dynamicMeshDict and zero rotatingWall boundary, I obtain a torque on the rotor for Mxx which is negative (right hand rule, thumb in +ve x-direction, positive torque is clockwise). So far so good, a negative Mxx will cause the rotor to rotate anticlockwise if the rotor was allowed to rotate. The torque magnitude is also in the right ball park so I am happy.

Next I set the rotor to rotate a little in the anticlockwise direction, my understanding is that the torque will decrease to zero as I increase the rotor speed anticlockwise due to the decreasing relative velocity and dynamic pressure above. However, OpenFOAM reports that the torque increases in magnitude (and is still negative).

Conversely, if I set the rotor to rotate a little in the clockwise direction OpenFOAM reports that the torque decreases in magnitude and will hit zero net torque at a certain rotor speed eg somewhere between +200 and +300 RPM as shown in the results graph...I haven’t pinned it down exactly yet but I do know from experiments that a similar rotor of this diameter will freely rotate around 230 RPM…..this also makes me happy. However, the rotor is now rotating in the wrong direction with zero net torque.

My questions are …

1) a) Has anyone experienced this and if so what was the problem?
2) b) Am I reading this correctly? Or is it possible that the forces/torques contribution from the rotating rotor and the pressure/viscous forces been summed incorrectly somehow in the code?

Any advice would be highly appreciated…my mesh is quite large but I could setup a simpler blockMesh case if that would help, please let me know.

Many thanks in advance

Attached Images
File Type: png model.PNG (68.0 KB, 41 views)
File Type: jpg result.jpg (17.7 KB, 41 views)
File Type: png graph.PNG (63.7 KB, 39 views)
jason is offline   Reply With Quote

Old   August 18, 2015, 14:41
Default Change Direction of Rotation
New Member
Join Date: Jul 2015
Location: West Lafayette, USA
Posts: 18
Rep Power: 2
WernerW is on a distinguished road
Hi Jason and Foamers comunnity,

It's been some time now since you worked with this model. I hoped you could solve it. I would like to ask you a Question about your model and your procedure.

How did you change the direction of the rotation of the Mesh ? Should one introduce a negative angular speed or just change the direction of the axis of rotation ,say (1 0 0) to (-1 0 0) ? I'm working with pimpleDyMFoam and I haven't been able to get a rotating mesh or my turbine stays still while the whole domain rotates ( it's crazy, I know ..) even though I'm following the pimpleDyMFoam/propeller tutorial.

How do you calculate the Torque on your turbine when you finish the simulation with pimpleDyMFoam ?

As for your question: may it that the torque that you get is the reaction torque acting on the air ?

WernerW is offline   Reply With Quote

Old   August 22, 2015, 10:15
Jason Dale
Join Date: Mar 2009
Location: UK
Posts: 65
Rep Power: 8
jason is on a distinguished road
Hi Werner,

Sorry for the delay in replying, been a hectic week.
See this post I just made for one type of example Streamlines and AMI patches

And also, this simple case attached for pimpleDyMFoam. The direction of the mesh movement if you have it setup correctly is purely a + or - for the omega value. You have to specify the cellZone that is rotating, in this case the cellZone is called "rotor" and contains all the rotor cells and was previously setup using the preprocessing tools. This can also be done on the fly in blockMesh as you generate the rotor mesh (see blockMesh file). Be careful about setting the axis as this is the axis the mesh rotates around and also the origin as this is the point the mesh rotates around.

dynamicFvMesh solidBodyMotionFvMesh;

motionSolverLibs ( "" );

cellZone rotor;

solidBodyMotionFunction rotatingMotion;
// new method in OF 2.2.2
origin (0 0 0.6);
axis (0 0 1);
omega 5.24; //rad per sec = +50 rpm


The torque is output automatically if you switch on the function forces which you do in the controlDict - see the functions at the end of the file, be careful of specifying the correct patch, density and the COG as the forces output corresponds to the COG.

Example output in the postProcessing directory is:

# CofR : (0 0 0.6)
# Time forces(pressure,viscous,porous) moment(pressure,viscous,porous)
0.00025 ((0.00945082 0.229273 9569.17),(-0.000115894 -2.18429e-05 144.667),(0 0 0)) ((0.323281 0.134849 1232.03),(-8.93156e-05 1.73033e-06 -7.75084),(0 0 0))

where the forces and torques are listed in the order shown at each time step...((pressure force X, pressure force Y, pressure force Z), etc etc...

You also have to ensure you set the correct boundary conditions for U for the rotor which is:

type movingWallVelocity;
value uniform (0 0 0);

This tells the solver that the wall forces should be corrected for rotation I think and then you get the correct output. This is not required for MRF as fixed value of zero should be used.

I compared MRF and AMI and the result is more or less identical.


Attached Files
File Type: zip (10.7 KB, 0 views)
jason is offline   Reply With Quote

Old   August 22, 2015, 10:19
Default Comparison Results
Jason Dale
Join Date: Mar 2009
Location: UK
Posts: 65
Rep Power: 8
jason is on a distinguished road
Torque and Force Comparison attached
Attached Images
File Type: png force.PNG (12.0 KB, 10 views)
File Type: png torque.PNG (12.3 KB, 8 views)
jason is offline   Reply With Quote


Thread Tools
Display Modes

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 On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
Difference in velocity prediction by kepsilon and komega Chander CFX 3 September 19, 2011 19:11
NASA High Lift Prediction Workshop nomad FLUENT 0 April 11, 2011 14:48
Near field noise prediction Usman CFX 1 January 23, 2008 12:15
Noise prediction Atul T. Shinde FLUENT 1 January 4, 2003 02:28
noise prediction harrisonh CD-adapco 3 January 8, 2002 02:24

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