CFD Online Discussion Forums

CFD Online Discussion Forums (
-   CFX (
-   -   Simulation with a rotating frame within another? (

siw April 18, 2013 07:13

Simulation with a rotating frame within another?

Is it possible to model this scenario in CFX?

A vertical axis wind turbine which has an odd number of blades (seen topics about this before). So this would be a rotating domain containing the blades inside a stationary domain for the surroundings connected via a GGI. The rotation of the turbine is only driven by the wind speed, it's not a known value beforehand.

However, the extra bit I need to include is that each blade constantly pitches (about a hinge axis fixing the blade to the hub) during a single 360 degree rotation of the turbine. The pitching behaviour is only due to the aerodynamic loads on the blade which change depending upoon if the blade is advancing or retreating relative to the freestream wind. This blade pitching would also contribute to the speed of the entire turbine. I guess this would involve putting each blade in a rotating domain which are themselves inside the turbine's rotating domain, all connected with GGIs.


bolus13 August 22, 2016 06:08

Hi siw,

did you eventually solve this problem?

I am also working on a similar problem.


kabuforever August 22, 2016 09:45

I don't think there is any necessity to use one rotating frame within another. this probably a fluid-structure integrated problem.

ghorrocks August 22, 2016 19:59

You can't put a rotating frame of reference inside another one. In CFX RFR needs a fixed rotation axis. So you are going to have to do this by moving mesh.

Also I would not recommend doing this as a rigid body or FSI simulation to get the rotation speed. Only use FSI if you are modelling the blade deflection due to aerodynamic loads. It is far easier to get the rotation speed by running a series of assumed and fixed rotation speeds and establishing the system torque versus speed characteristic. Then you can interpolate to zero net torque based on the system load. This approach requires several simple simulations.

bolus13 August 23, 2016 02:57

Yes, I noticed this. How would that work with the moving mesh.

I read on another website the following text on how to do this? Would you agree with this. My (brief) efforts to apply this have not been successful yet


In general, specifying a rotating domain inside a rotating domain in CFX-Pre does not move the axis of the rotated domain. This needs to be done as a moving mesh case.

Let's say that a larger outer cylinder is spinning around a global z axis and smaller inner cylinders are rotating around their own local z axis (as well as around a global z axis). Then the solid body rotation of the large cylinder needs to be defined as a moving mesh and the local rotation of smaller cylinders as a number of individual rotating domains.

The larger cylinder needs to be connected to the surrounding stationary domain by a standard GGI interface which will automatically update the reintersecting moving mesh.

The smaller (inner) rotating cylinders must be connected to the larger (outer) cylinder by transient rotor-stator interfaces. Defining an interface, creates two separate BCs patches, one for each domain. These patches need to move with the same mesh displacement as the volume mesh of the larger (outer) cylinder, therefore mesh motion has to be defined for
them as well.

ghorrocks August 23, 2016 05:59

I don't understand the quote's second paragraph. The domain which has a simple rotation about a fixed axis should be made a rotating domain and the domains which have a moving rotation axis have to be moving mesh. I can't see how it can be done any other way.

Other than the quote seems correct.

siw August 23, 2016 14:37


Originally Posted by bolus13 (Post 614957)
Hi siw,

did you eventually solve this problem?

I am also working on a similar problem.


This was over three years ago and I do not recall what I did in the end - I have worked on so many other projects since then:D

All times are GMT -4. The time now is 18:33.