Aerodyn v15 Unsteady Aerodynamics


I’m using Aerodyn v15 with FAST v8.16 to generate a Cp surface for various values of pitch angle and tip speed ratio for the NREL 5MW turbine. I’m aware this has been done before and the curves have been made available on this forum, but I would like to set this up myself now with Aerodyn v15.

I’ve created a set of ElastoDyn input files, in each of which the initial rotor speed is set to the appropriate value with regard to the 8 m/s uniform wind speed which I’ve specified, in order to give the desired tip-speed ratio for each simulation. I’ve disabled all of the DOFs in the ElastoDyn input file including GenDOF which of course causes the rotor speed to remain constant at its initial value for the duration of the simulation. This seems to be the recommended set up after reading other posts on the topic on this forum. The pitch angles are then specified via a Matlab script and FAST is executed via the S function in Simulink.

Using the recommended aerodynamic modelling settings for an operational rotor as outlined in the AeroDyn v15 user manual, any simulations I try to run with a non-zero blade pitch angle only complete successfully for TSRs up to around 7.5 (this number varies depending on pitch angle). For example, my simulation at a TSR of 7.5 and pitch angle of 4° fails with the error message:

Error reported by S-function ‘FAST_SFunc’ in ‘OpenLoop/FAST Nonlinear Wind Turbine/S-Function’:
FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:AD_CalcOutput:BEMT_CalcOutput(node 18, blade 2):Compute_UA_AirfoilCoefs:UA_CalcOutput:Mach number exceeds 1.0. Equations cannot be

By disabling unsteady aerodynamics (setting AFAeroMod to 1) all of my simulations complete successfully for TSRs in the range 3 to 16 and blade pitch angles in the range 0° to 30°. Taking the mean of the last 100 Cp values from each simulation and looking at the resulting Cp curve for pitch angle 0°, several values exceed 0.5. The highest value is 0.5029 at a TSR of 8. This is considerably higher than the 0.482 mentioned here:

With unsteady aerodynamics (UA) enabled I do manage to calculate the Cp curve at pitch angle 0°. Here I get a value of 0.484 for Cp_max. This seems like the more valid result.

Is it possible, or even advisable to simulate all operating points using unsteady aerodynamics?
If so, how can I avoid the error I’ve been getting?

Thanks for any help.


Dear Barry,

I’m not sure why AeroDyn is triggering an error related to “Mach number” for your case.

Because you disabled all ElastoDyn DOFs, it sounds like you want to simulate with a rigid turbine. In that case, I would recommend that you use the standalone AeroDyn v15 driver rather than the coupled FAST tool: Do you get the same error when run this model with standalone AeroDyn v15?

Best regards,

Dear Jason,

thanks for your answer.

Actually I disabled all DOFs just to start with as simple a model as possible. Later the turbine structural flexibilities will be important for my analysis.

I’ve tried running the simulation now with the standalone AeroDyn v15 driver, as you suggested. It completed successfully for the operating point which led to the error described in my previous post.

This is the version of AeroDyn which I used with the standalone driver:
v15.04.02a from 10 - May - 2017.

This is the version of AeroDyn which came with the FAST distribution (v8.16.00a-bjj from 27- Jul - 2016) which I’ve been using:
v15.03.00 from 27 - July - 2016

Note that I needed to add 4 lines to my AeroDyn input file to get my original model to run with the AeroDyn version in standalone mode:


All files were otherwise identical. I also specified the same integration time step in the driver file for the standalone simulation as that specified in the simulation with AeroDyn coupled with FAST.

Can you think of any reason why I’m getting the error when I run FAST but not when I run AeroDyn in standalone mode?


Dear Barry,

In addition to those new input parameters, the BEM algorithm was made more robust between v15.03 and v15.04. I’m not sure that this is the cause for the differences, but perhaps. You could see if upgrading your FAST model from v8.16 to OpenFAST resolves the problem.

Best regards,