Aerodyn standalone version

Good morning,
I would like to use Aerodyn in the standalone mode on Windows and maybe on Linux too. I have downloaded the archive available here (not sure if it is the last version of Aerodyn 15) github.com/old-NWTC/AeroDyn/issues and then extracted the files.

I found this post on the forum related to Aerodyn download and installation How can we download AeroDyn, FAST and other design codes? but I don’t know how to generate .exe on windows. Could you please indicate me too what is the process for Linux ?
Many thanks in advance.
Best regards.
Florence Haudin.

Dear Florence,

The newest version of AeroDyn is included in the OpenFAST github repository: github.com/OpenFAST/openfast.

On Windows, I find it easiest to compile with Intel Fortran and Visual Studio (both now free). A Visual Studio solution for the standalone AeroDyn driver named AeroDyn_Driver.sln is available in the OpenFAST/vs-build/AeroDyn directory. After downloading the OpenFAST repository, Intel Fotran, and Visual Studio, simply open up this solution file and click on Build.

On Linux, the use of CMake is likely the easiest, following the instructions available on OpenFAST readthedocs: openfast.readthedocs.io/en/main … index.html.

Best regards,

Hi Jason,
Thanks for your answers and help.

I tried to run aerodyn on the Linux version with data for the NREL 5MW model of turbine (I attached typical input and driver files with modified extension to be able to join them to this post). I got this error message :


Running AeroDyn Driver
a part of OpenFAST - v2.1.0
linked with NWTC Subroutine Library

Opening input file: NRELOffshrBsline5MW_Onshore_Test01.dvr

NRELOffshrBsline5MW_Onshore_AeroDyn15.dat
Dvr_Init:ValidateInputs:OutFmt produces a column width of 15 instead of 10 characters.

Running case 1 of 3.
WndSpeed=7 m/s; ShearExp=0; RotSpeed=12.1 rpm; Pitch=0 deg; Yaw=20 deg; dT=0.138 s;
Tmax=12.793 s; numSteps=93
Running AeroDyn.
Init_AeroDyn:AD_Init:ReadInputFiles:ReadPrimaryFile:Invalid logical input for file
“./NRELOffshrBsline5MW_Onshore_AeroDyn15_Test01.dat” occurred while trying to read CavitCheck.
AeroDyn Driver encountered simulation error level: FATAL ERROR

Aborting program.


I don’t understand because CavitCheck parameter is not present in the aerodyn input file. I tried to add it with False value since we are not dealing with MHK. But then other values are then asked in the error message, values that have to be given in the environmental sections like Patm, Pvap, FluidDepth.Even if we are not interested in cavitation and water. I have missed something I guess.
Many thanks for any help.
Best regards.
Florence Haudin.
NRELOffshrBsline5MW_Onshore_Test01_dvr.txt (1.92 KB)

Dear Florence,

Your error is pointing to a problem with your input file format. Even if you are not modeling an MHK rotor, you still must have the CavitCheck, Patm, Pvap, and FluidDepth inputs in your AeroDyn input file associated with OpenFAST v2.1, which looks to be the version you are running.

As with any input file processing error, I would enable the “Echo” option to debug. The changes to the input file format with each version of OpenFAST are documented here: openfast.readthedocs.io/en/main … hange.html.

Best regards,

Hi Jason,
Thanks for your reply. I think that I am indeed lost between different versions of OpenFast and requested formats for the input file.

I downloaded the OpenFast version you advised me in the first post of this conversation and it seems to be the 2.1 version. I guess that the example file on openfast.readthedocs.io/en/main … input-file a are for the latest version 2.6. I took that files (primary and driver) and I am trying to adapt them with regards to the error messages I got. I am sorry but I am confused with the list of changes : I don’t know how to use it without having a starting file, for instance having the version 2.0 of the input file and change it to get the 2.1 following the instructions.

So up to now I am still not able to run aerodyn_driver but I am not loosing hope ;-)
Best regards.
Florence.

Dear Florence,

Downloading OpenFAST from github.com/OpenFAST/openfast should give you OpenFAST v2.6 as of now, assuming that you’ve selected the main branch.

The AeroDyn input file available from readthedocs (openfast.readthedocs.io/en/main … xample.inp) corresponds to the version of AeroDyn within OpenFAST v2.6

Best regards,

Thanks Jason,
I have tried to re install version 2.6. I have downloaded the main branch from the site github.com/OpenFAST/openfast.
I have created a build directory, run a make command and then a cmake. Everything has been installed. But then I don’t understand why when I run aerodyn standalone, it is writen “aerodyn is part of OpenFast 2.1”. I should have 2.6 version.

I used to work with another version of openfast. I don’t remember which one exactly. I have just removed the old fast directory, not run any uninstall command. Is it possible that there are conflicts between differents fast version ?

Many thanks for any help.
Best regards.
Florence Haudin.

Hi Florence,

I have a few questions that might help determine the problem.

Did you download the OpenFAST repository archive from GitHub or did you clone the repository with git in the terminal?

When you run which aerodyn_driver, what is the result?

Thanks,
Rafael

Hi Rafael,
I have tried both installation (from archive and from cloning).
The last one was from archive especially mentionned 2.6 version.
When I tried “which” command right now, nothing appears.
I thing there was some trouble/conflict with symbolic links created for openfast or aerodyn. Now I removed them.
When I try to locally run aerodyn in the directory /openfast-2.6.0/build/modules/aerodyn, the error message is now :
“The variable “UseBlCm” was not found on line #59.”
But this variable is present in the input file… but not at that specified line since I made a test with only 1 aerofoil file.*

When running aerodyn also it is written :
“Running AeroDyn_driver a part of OpenFAST - -128-NOTFOUND
linked with NWTC Subroutine Library”
So I guess this is openfast 2.6.

Many thanks in advance.
Best regards.
Florence Haudin.

Florence,

Ok, it sounds like you’ve tried a few different things. At this point, my suggestion is that you delete the archive of the OpenFAST repository and use the one cloned with git. It may be simplest to remove all OpenFAST repositories and start from scratch. Also, be sure no OpenFAST or AeroDyn binaries are installed in /usr/bin or /usr/local/bin.

To compile AeroDyn from scratch at version 2.6, do these commands:

git clone https://github.com/openfast/openfast # this by default gets the "main" branch which is at v2.6 cd openfast mkdir build cd build cmake .. make aerodyn_driver

If all commands complete successfully, you should see the AeroDyn executable at openfast/build/modules/aerodyn/aerodyn_driver. After the build completes, could you copy the commands below and let me know the results? You’ll have to change the first line so that it moves into your OpenFAST directory.

cd openfast
git log -1
cd build/modules/aerodyn/
./aerodyn_driver -v

Good evening Rafael,
Thanks for your help. This time it is ok.
I also finally managed to run a simulation with a driver file, the necessary inputs (blade, airfoils and primary input file)
Last question : here we run make only for aerodyn_driver. I guess we have also to run it globally for openfast if we want to use the coupled code ?
Thanks again.
Best regards.
Florence Haudin.

Yes thats right. To run the coupled code, you’ll need to compile OpenFAST with make openfast

Good morning,
I have now questions regarding the outputs of Aerodyn.
I would like to calculate the aerodynamic forces and moments at the hub. I am thinking about defining a tower with only 2 nodes since I am not interested in the tower influence and calculating the forces and moments at the tower top. But then I don’t know what output channel I should use and to properly set this section :

====== Outputs ====================================================================================
True SumPrint - Generate a summary file listing input options and interpolated properties to “.AD.sum”? (flag)
0 NBlOuts - Number of blade node outputs [0 - 9] (-)
1, 3, 4, 6 BlOutNd - Blade nodes whose values will be output (-)
1 NTwOuts - Number of tower node outputs [0 - 9] (-)
2 TwOutNd - Tower nodes whose values will be output (-)
OutList - The next line(s) contains a list of output parameters. See OutListParameters.xlsx for a listing of available output channels, (-)

END of OutList section (the word “END” must appear in the first 3 columns of the last OutList line)

Many thanks for any help.
Best regards.
Florence.

Dear Florence,

I’m not sure I fully understand your question, but if you are not interested in tower aerodynamic loads or the influence of the tower on the aerodynamic loads on the blade, you can set in AeroDyn TwrPotent = TwrShadow = 0 and TwrAero = False, in which case you can set NumTwrNds = 0, NTwOuts = 0 and leave the table of distributed tower properties and TwOutNd blank.

Best regards,

Thanks Jason.
So now it is clear for me concerning the tower if I don’t want to consider its influence.
I will try to clarify my question concerning the blade nodes : it seems that I am wrong somewhere :
Here is the error message (I have 20 airfoils files so 20 nodes and I can’t take results from 9 of them) :


Init_AeroDyn:AD_Init:ValidateInputData:Blade 1 node 11 must be a number between 1 and NumAFfiles
(20).
ValidateInputData:Blade 1 node 12 must be a number between 1 and NumAFfiles (20).
ValidateInputData:Blade 1 node 13 must be a number between 1 and NumAFfiles (20).
ValidateInputData:Blade 1 node 14 must be a number between 1 and NumAFfiles (20).
ValidateInputData:Blade 1 node 15 must be a number between 1 and NumAFfiles (20).
ValidateInputData:Blade 1 node 16 must be a number between 1 and NumAFfiles (20).
ValidateInputData:Blade 1 node 17 must be a number between 1 and NumAFfiles (20).
ValidateInputData:Blade 1 node 18 must be a number between 1 and NumAFfiles (20).
ValidateInputData:Blade 1 node 19 must be a number between 1 and NumAFfiles (20).
ValidateInputData:Blade 1 node 20 must be a number between 1 and NumAFfiles (20).
ValidateInputData:Blade 2 node 11 must be a number between 1 and NumAFfiles (20).
ValidateInputData:Blade 2 node 12 must be a number between 1 and NumAFfiles (20).


Here is my output list informations :
====== Outputs ====================================================================================
True SumPrint - Generate a summary file listing input options and interpolated properties to “.AD.sum”? (flag)
9 NBlOuts - Number of blade node outputs [0 - 9] (-)
3,5,7,9,11,13,15,17,19 BlOutNd - Blade nodes whose values will be output (-)
0 NTwOuts - Number of tower node outputs [0 - 9] (-)
0 TwOutNd - Tower nodes whose values will be output (-)
OutList
“Fx, Fy”

I don’t know what’s wrong.
This is for the different nodes locations, but if I want to calculate the forces on the hub, what channel do I have to use ?
Many thanks for any help.
Best regards.
Florence.

Dear Florence,

Your setting of NBLOuts and BlOutNd in the Outputs section of the AeroDyn input file looks fine to me. And the list of AeroDyn outputs for the tower, blade and rotor is documented here: openfast.readthedocs.io/en/main … t-channels.

The error you are receiving is generated when reading the AeroDyn blade input file, where the distributed aerodynamic properties (radial stations, twist, chord, etc.) are specified.

Best regards,

Hi Jason,
Thanks for your help. I corrected the problem in the blade file. I think the numbering of the last column with the IDs of airfoils profiles was incorrect.
There’s still a problem remaining : it seems that in my airfoils files there is a format problem with the polar data. I thought it was a problem of not using scientific notation with a given numbers of digits… so I regenerated the files with an homogeneous notation. But it finally doesn’t solve the problem. Is openfast sensitive to the separator choice ? Here is the error message.


Running AeroDyn.
AD15 Nodal Outputs: Nodal output section of AeroDyn input file not found or improperly formatted.
Skipping nodal outputs.
Init_AeroDyn:AD_Init:Init_AFIparams:AFI_Init:ReadAFfile:ParseSiAry:

A fatal error occurred when parsing data from “./Re50000/airfoil_Re50000_station01.dat”.
The “CoeffData” array was not assigned valid REAL values on line #19.
The text being parsed was :
“-1.8000000E+02 1.2000000E+00 0.0000000E+00”
AeroDyn Driver encountered simulation error level: FATAL ERROR

Many thanks for any help.
Best regards.
Florence Haudin.

Dear Florence,

If I am understanding correctly, the error is occuring during the parsing of the table of aerodynamics coefficients at the end of the file (your AF file does not include the unsteady aero section, but that is not a necessary section).

Are you possibly missing a column in the aerodynamics coefficients table at the end of the file? For OpenFAST v2.6, there is a Cm column in addition to the Alpha, Cl, and Cd columns. This table looks like the following format:

!........................................
! Table of aerodynamics coefficients
        143   NumAlf            ! Number of data lines in the following table
!    Alpha      Cl      Cd        Cm
!    (deg)      (-)     (-)       (-)
   -180.00    0.000   0.0267   0.0000
   -175.00    0.274   0.0370   0.1379
   -170.00    0.547   0.0968   0.2778
   -160.00    0.685   0.2876   0.2740
   -155.00    0.766   0.4025   0.3118
   -150.00    0.816   0.5232   0.3411

Examples of the input file can be found in the reg_tests/r-test/glue-codes/openfast/5MW_Baseline/Airfoils in your cloned repository included the regression testing submodule (the clone instructions above did not include this step), or can be viewed online here: [url]https://github.com/OpenFAST/r-test/tree/adffb7e3baa3ef4b8b2ea4b777ba6b23b8048069/glue-codes/openfast/5MW_Baseline/Airfoils[/url] for release v2.6.0.

If this isn’t the case, could you attach your airfoil table?

Regards,
Andy

Hi Andy,
Thanks. I forgot to set InCol_Cm to zero since I don’t have these informations for the airfoils.
Also the section for the outputs for all blades station was missing.
Now everything is working.
Many thanks.
Best regards.
Florence Haudin.

Good afternoon,
This post is still about aerodyn standalone version as a beginner.
I am trying to reproduce some results for the thrust and the torque on a given wind turbine using the BEM, without any tower effect, with steady blade airfoil aerodynamics model.
I think that after checking my geometrical parameters given for the hub in the dvr file are ok. Also for the polar data, I am using option 2 for AFTabMod - Interpolation method for multiple airfoil tables the interpolation. So from the polar data I have, I have generated the appropriate airfoils files for m different Re numbers and n radial stations (via a script that automatizes the generation of n files with m tables from a 3D matfile containing m*n polar data for k different AOA). I guess that if any formatting problem was introduced inside the airoils files, aerodyn would generate an error message and would not run ?
In my case, it runs but I can’t find correct results (about a factor 5 smaller result for the thrust and 10 times larger for the torque). Any idea/advice from experimented users about what could create discrepancies ? Or any methodology to suggest to find the problem ?
Many thanks in advance.
Best regards.
Florence.