-
Notifications
You must be signed in to change notification settings - Fork 457
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add ability to turn unsteady aero back on during a simulation #647
Conversation
blend UA solution with steady solution: - starts to turn off when U < 1 and off completely when U == 0 - starts to turn off at AoA > 5 degrees before UACutOff (from airfoil file) and off completely when AoA >= UACutoff
also modified definitions of time constants with UAMod=4
Fixes a warning about types when building in double precision
Allocate the spline coefficient arrays by size of coef arrays. These would only vary between different tables in an airfoil file if the IncludeUA flag was different among the tables. This will get sorted out in the UA module if that is used.
Added unfiltered alpha (non-HGM models) and weight as output channels. Also fixed units in example Unsteady aero input file.
These changes will not affect any results, but should remove some warnings from the compiler(s) used in GitHub actions. Also fixed some comments.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've discussed this enhancement with Bonnie and I'm generally happy with the approach. There are some new spikes that show up in these test results, but that is likely because of how the models are set up (likely not very realistically). The tests could be changed to eliminate these spikes, e.g,. by switching UAMod, changing the UA parameters, or lowering the UACutOut.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks good to me. It'd be nice to merge this soon so that we can push a vortex code release (that will need some merging with this).
EDIT: I've merged this with the OLAF and tested it.
This will help sync with Envision code better later.
Also add nacelle inflow velocity input. Note that none of these inputs or outputs are included in linearization. Also: the IfW_InputSolve no longer changes the previous inputs to inflowWind. `Ifw_InputSolve` was changed to use the appropriate state, which should fix the two work-arounds that were in the code. (1) I don't see why we need to overwrite the InflowWind input history array: we don't use extrapolated values for it with the current glue code, and (2) if we use the appropriate state, we will be using the most recently calculated `AD%OtherState%WakeLocationPoints` thus removing the need for changing the STATE_CURR values. I'm concerned that this would have given weird results with a correction step. If it doesn't, then I'm not sure why the positions are stored as an other state instead of an output. @andrew-platt should review this part, though.
Feature or improvement description
This pull request allows unsteady aero (UA) to turn back on after it has been turned off. Previously, when the angle of attack exceeded a certain threshold, UA was turned off for that node for the rest of the simulation. The new algorithm blends the steady solution with the unsteady solution; it uses:
UACutout
value listed in the airfoil fileUACutout
UACutout
Some other changes included in this PR:
UA_OUTS
preprocessor directive is used only in UA now.R8Ki
vsDbKi
in MAP++ for the double-precision C-Fortran interfaceRelated issue, if one exists
none
Impacted areas of the software
AeroDyn
Additional supporting information
Test results, if applicable
The failing cases 3, 7, 8, 12, and 14 previously had
Warning: Turning off Unsteady Aerodynamics due to high angle of attack
in their log files (i.e., printed to the console file). After rerunning those cases with additional aerodynamic outputs, I checked that the changes in output were indeed related to the outputs of unsteady aero.Case 13 had a step or two where the angle of attack exceeded
UAcutout - 5 degrees
, thus slightly changing results for that case. You have to zoom in quite a bit to see differences (if we output at every time step, it might be more noticeable)Some example plots:
Case 3: AWT
Case 7: AOC
Case 8: AOC
Case 12: WP ECD: This case looks the worst, especially in the acceleration outputs. However, I believe that is a result of the UA model itself, and not the new code. One option would be using a lower
UAcutout
value ; we have also seen thatUAMod=2
seems to give better results in some of these extreme wind cases.Case 13: WP
Case 14: SWRT