Hi everybody:

I would like to ask you about the FAST Non Linear Wind Turbine.In my model the Yaw position and the Blade Pitch Angels are zeros and the generator power and torque are fixed.We are introducing a turbulent wind like the figure. Why the Rotor speed is not a constant in the exit?
This is my model. Is so simple, becouse we are trying to understand the Fast.
Thank you.

Dear Ekaitz,

When the generator DOF (GenDOF) is enabled in FAST, the rotational speed of the drivetrain (generator and rotor) is determined by the torques applied to it. The pitch and yaw control actions are fixed, so, the aerodynamic torque will fluctuate based on the turbulent wind input you are feeding the model with. You are also giving the generator a constant torque. When the aerodynamic torque is more than the generator torque (cast to the low-speed shaft side), the drivetrain will accelerate; when the generator torque is more than the aerodynamic torque, the drivetrain will decelerate. This is what you are seeing in your response.

I hope that helps.

Best regards,

Thank you for your replay.
Here I have some simulation´s results. I ask you for some help becouse there are some illogical results. This is the graphics:

In the first graphic we con see the Torque, in second the Power, in third the rotor speed and in the last the pitch.
The wind speed is constant. So in my opinion the aerodymanic torque will be constant to. But the rotor speed still accelerates.
We can see that the pitch change to 90 degrees(1,57 rad). I think the machine should stop but it is not. With the pitch at 90 degrees the machine should not absorb power.

On the other hand, I don´t know why the FAST demands me the Power and why returns me the same Power. I think it shouldn´t be necesary.


Dear Ekaitz,

The aerodynamic torque (and power extracted by the blade) depends on both the wind speed and your rotor rpm. The rotor rpm in turn if GenDOF is enabled, as Jason stated in his previous post, is governed by your generator torque and will change as long as the generator torque is not the same as the aerodynamic torque. In other words, the system will try to find an equilibrium rpm where the rotor torque matches the generator torque. I am not sure if you are outputting rotor power and torque or generator power and torque. The generator/electrical power in FAST Simulink, as I understand it, is just a feed through for output purposes only. You should calculate that in you torque control block based on you generator characteristics and rotor rpm. As for blade pitch, I have never played with it and cannot really comment on it. Hope this helps.



Dear Ekaitz,

I agree with everything Subin said.

You didn’t explain what torque and power you are plotting. There are applied torques, such as aeordynamic torque, generator torque, and brake torque, and reaction torques, such as the torques transferred through the low- or high-speed shafts (which include the inertial torque effects from drivetrain acceleration or deceleration, as well as gearbox friction torque). These can all be different; they will only be equal (when cast to the same shaft) if the drivetrain is in equilibrium, which clearly it isn’t because the rotor is accelerating.

Likewise, there are several types of power, including electrical power and mechanical power (torque times speed). As Subin explained, the electrical power simply feeds through the FAST S-Function in Simulink. It can be (but need not be) calculated and passed to the FAST S-Function and used for output/feedback purposes. The FAST S-Function doesn’t need the electrical power, as it doesn’t influence the internal aero-elastic equations of motion.

I agree that there should be very little aerodynamic torque at 90deg blade pitch (unless the blades themselves have large aerodynamic twist). So, my guess is that whatever generator model you are using (you didn’t explain which one) is supplying a motoring torque to accelerate the rotor.

Best regards,

Thanks all of you for yours replays.

I want to ask you about the blade pitch control (PCMODE) in the ‘.fst’ files. When the PCMODE was zero our model control run perfectly, so we took the Pitch Angle from the FAST output and it was zero. When the PCMODE is 2 (user-defined from Simulink) and we set the Blade Pitch Control to zero (I think the model will run the such as the other, with PCMODE=0), the simulink give this message:“Solver Step size is becoming less than specifed minimum step size.” I tried to change the simulation parameters like type and max and min step size. But it did not work.
Thanks a lot.

Best regards.

Dear Ekaitz,

You must not be using a fixed step size. It’s been a while since I messed with the simulink interface for FAST but I would suggest looking at the configuration parameters for the simulink models that are included in the FAST archive and also going through the Simulink Interface section of the FAST manual. Those really helped me get my model working.



Dear Ekaitz,

I agree that this is an issue related to the variable-step-size integrator you’ve chosen in Simulink. Because this is an issue related to Simulink and not to the FAST S-Function itself, I suggest you contact MATLAB support for help.

Best regards,

Thank you so much for your replys, they helped me a lot.
Anybody knwos something about the FAST’s differential equation model.

Dear Ekaitz,

Unfortunately, we’ve never been budged the time to write an official FAST theory manual. Nevertheless, here is a quick overview of the FAST theory basis, plus links to where you can find more information.

FAST is a nonlinear time-domain model, which solves equations of motion that are of the form:

M(q,u,t)*qdd = f(q,qd,u,ud,t)


M = mass matrix depending on a nonlinear combination of displacements (q), control inputs (u), and time (t)
qdd = accelerations
f = forcing vector depending on a nonlinear combination of displacements (q), velocities (qd), control inputs (u), wind inputs (ud) (input disturbances), and time (t)

The FAST model is a combined modal and multibody dynamics formulation. The equations of motion above represent the standard multibody dynamics form (with no constraints). The modal part comes in through how the DOFs for the flexible tower and blades are defined. The tower and blades in FAST are treated as elements whose flexibility is determined by the summation of shape functions (modes) scaled in magnitude (DOFs).

I’ve provided a few references below which expand on this information:
*Chapters 2-4 of my Master’s thesis provide a good overview of the basic aerodynamic and structural dynamic theories, although not all of the information is up-to-date (it is about 8 years old), it doesn’t cover everything, and there a few errors:
*This paper provides a basic, 10-pg overview of the FAST code and the changes we made to it about 6-7 years ago:
*The aerodynamic theory is also described in AeroDyn’s theory manual:
*The new theory pertaining to hydrodynamics and mooring system responses is described here: … 5/PDFSTART.

Although the above references are not entirely up-to-date, I think they should provide the information you are seeking. However, if you still want more information, such as the detailed derivation of the equations of motion as currently implemented, we do have this information available. However, it is written down in a series very large MS Word documents containing mostly equations and very little explanation. We hope to eventually publish this information as the official FAST theory manual (if we’re ever budgeted the time). But if you need this information as well, we can provide this too.

Best regards,

Hi and thanks for you replais. They help me a lot.
I have an other question. Now it is about the turbsim.
I have used it for generate wind archives for my model., and I want to create a wind step. I tried it doing by my self, changing the wind archives wiches I had and FAST can’t use them.
Can I generate a wind step with Turbsim?
Thank you a lot.

Are you asking if you can model a step change in the wind speed? Do you really need full-field turbulence, or would using the hub-height wind-file option work for you? If so, it’s trivial. See the AeroDyn documentation for details.