Superimposing of Coherent Events in AeroDyn

I understand that AeroDyn has the ability to superimpose coherent events onto background turbulence. I’m interested to know how AeroDyn uses the LES and DNS files from the EventData for TurbSim. I’ve been looking at the subroutines in CTWind.f90, but I’m not familiar enough with Fortran to make complete sense of the code. That all being said, I have some questions:

Does the actual adding of the coherent event happen in the subroutine LoadCTData? Specifically this line:
Vel(IYK,IZK,ITime) = CTScale(IComp)*Com(IY) + CTOffset(IComp)

If so, what do the arrays CTScale, Com, and CTOffset represent?
If not, will somebody point me in the right direction?

I appreciate the help.

Colin Slade
Brigham Young University

Hi, Colin.

In AeroDyn v13.00.00a-bjj, the superpositioning is done in function WindInf_GetVelocity() in InflowWindMod.f90. In that function, we first get a “background” wind speed from hub-height, full-field, 4-D, or user-defined wind fields (currently, it is only set to work with the full-field, though). Then, if we’ve requested coherent turbulence (i.e. CT_Flag is .TRUE.), we add the velocity CTWindSpeed to that background. CTWindSpeed is the velocity from the coherent event dataset at the requested time and position.

The equation
Vel(IYK,IZK,ITime) = CTScale(IComp)*Com(IY) + CTOffset(IComp)
is actually just converting the scaled 16-bit integer data read from the binary file into meaningful velocities. The CTScale and CTOffset variables perform the linear transformation of the 16-bit integers in variable Com. LoadCTData() reads the data into arrays (the subroutine is called once for each of the wind components) that are then interpolated when the wind speed (of just the coherent event dataset) is requested using function CT_GetWindSpeed(). The CTWind module contains all the code used to read, scale, and interpolate the binary data from TurbSim’s coherent structures.

Hope that helps.

Thanks, Bonnie. I think I have it pretty much figured out now. I am missing just one piece now; where/how are the .ctp files generated?

You must create your own .ctp file, but you can start from a sample included in the TurbSim archive. The TurbSim User’s Guide ( also contains a description of the .ctp files, starting on page 44.

Hi Bonnie,

Is it possible to output a “FF” wind file after the coherence events are added by Aerodyn? As in, if I want to study the wind at the rotor hub and the blade tip. I see that out of FAST simulation outputs, there are only the wind velocity (WindVxi, WindVyi, WindVzi) x,y,z at hub.


Hi, Surya.

There is an old program called CTWind that I wrote when I was working with the coherent structures. It merges the FF files with the coherent turbulence and can generate FF files (I think). Here is a link, but I must warn you that I haven’t looked at this in many years.

FAST v8.12 has options to output wind speeds at many different points. In InflowWind you can specify wind velocity outputs at points fixed in space (

Thanks Bonnie for your response and the program.
I’ll let you know the results from the code.

Hi Bonnie,

Yes the code works! Thanks a lot.