Skip to content

AeroAcoustics improvements - #3449

Open
bjonkman wants to merge 5 commits into
OpenFAST:devfrom
bjonkman:b/AeroAcoustics
Open

AeroAcoustics improvements#3449
bjonkman wants to merge 5 commits into
OpenFAST:devfrom
bjonkman:b/AeroAcoustics

Conversation

@bjonkman

Copy link
Copy Markdown
Contributor

Feature or improvement description
This pull request primarily addresses potential numerical issues in the aeroacoustics module. There are now safety checks around negative Reynolds, Mach, and Strouhal Numbers, overflow with 10^x, and division-by-zero. Some variables that may have been uninitialized are now set.

It also

  • removes the warning in the AA module about the blade percentage when only one element is used. This 1-node use case would probably happen only in the AA driver.
  • adds the Aeroacoustics driver and AirfoilInfo driver to the VS build. The aeroacoustics module was already in the cmake build scripts.
  • changes the VS project for NWTC library to stop checking that the correct data types are passed through interfaces. The Debug mode didn't build because of FFTpack 5.1

Related issue, if one exists

Impacted areas of the software
Aeroacoustics, VS build

Additional supporting information
We have noticed at least one instance where the AA module output a large spike, which disappeared when re-run with the same executable and input files. I can't yet confirm if these changes fixed the issue, but I am hopeful that it helped.

Generative AI usage
Assisted by: Kiro:claude-opus-5

Test results, if applicable

  • r-test branch merging required

Debug build does not work without this. FFTPACK relies on some old Fortran method of passing the different datatypes through the same interface.

Note: this also reorders some files that were added out of alphabetical order. This prevents VS from giving differences every time the file is open (though it doesn't fix the problem with the registry files in the VS project)
We noticed a couple of spikes that occurred in AA output files during a simulation, but when re-run with the same executable and same input files, the spike disappeared (all non-AA outputs were the same). I asked AI to take a look at the code for uninitialized variables and other memory issues in the AeroAcoustics module, and it came back with these changes.

Note the warning about re-entrant code in TNO

Assisted-by: Kiro:claude-opus-5
The AA driver allows only one node for testing purposes, but if the BldPrct isn't 100 in that case, it would ALWAYS give a warning about changing the aerodynamic mesh. This check avoids printing the message in that case.

Assisted-by: Kiro:claude-opus-5
In the future, we can upload steering that is more general, but for now, I'm ignoring my .kiro files.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant