openfast icon indicating copy to clipboard operation
openfast copied to clipboard

Updates of Unsteady Aero (UAMod=4) and DBEMT (DBEMT_Mod=3) for linearization

Open ebranlard opened this issue 3 years ago • 5 comments

This pull request is not ready to be merged.

Feature or improvement description

  • New formulation of continuous DBEMT. Results will now match discrete DBEMT
  • Update of UAMod=4 with new dynamic drag (consistent with HAWC2 formulation)
  • The two modules are now allowed to be used for linearization

Impacted areas of the software AeroDyn, UA and DBEMT

Additional supporting information Theory, and verification results are given in the following reference: E. Branlard, B. Jonkman, G.R. Pirrung, K. Dixon, J. Jonkman (2022) Dynamic inflow and unsteady aerodynamics models for modal and stability analyses in OpenFAST, Journal of Physics: conference series 2265 032044

Test results, if applicable

Comparison of DBEMT_Mod=1 and DBEMT_Mod=3 image

Examples using UAMod=4, comparison with HAWC2 image

Results from new r-test:

  • In the legend, we use "DBEMT0" to indicate "WakeMod=1". We use "UAMod0" to indicate "AFAeroMod=1"
  • As expected, DBEMT1 gives the same results as DBEMT3 (discrete and continuous formulations match)
  • The r-test results are the ones corresponding to DBEMT3 and UAMod4.
  • The UAMod and DBEMT features clearly changes the results, indicating that the features are well tested by this r-test. image

Checklist

  • [x] Update the documentation Live version available here
  • [x] Add r-test (BAR_SineMotion_UA4_DBEMT3)
  • [x] Publication

ebranlard avatar Feb 12 '22 01:02 ebranlard

Maybe will fix #983 ?

andrew-platt avatar Feb 14 '22 17:02 andrew-platt

This pull request is ready to be merged. The commits can potentially be squashed. A r-test pull request accompanies this pull-request.

ebranlard avatar Jun 16 '22 17:06 ebranlard

Thank you @jjonkman for the review, I've now addressed your comments.

ebranlard avatar Jul 18 '22 19:07 ebranlard

A couple of changes were needed to activate the linearization with UA_Mod=6. Currently UA_Mod=6 is using 4 states, where only the 4th one is used. This is to reduce code duplications since the 4th state is the same for UA_Mod=4,5,6.

To reduce the burden of mode identification, I've added if statements to only linearize the "4th" state when UA_Mod=6 is used.

In the future we could consider handling the Oye model separately and storing only the relevant info in x(1). Then the variable UA_NumLinStates introduced by bjonkman could be used. I've chosen to keep the current UnsteadyAeroDynamics for now since we already have a lot of pull requests and conflicts for AeroDyn. @bjonkman and @jjonkman let me know if that's ok.

ebranlard avatar Jul 18 '22 20:07 ebranlard

Seems like a reasonable shortcut to me for now. Hopefully the implementation of UAMod = 6 would be simplified in the future.

Thanks,

jjonkman avatar Jul 18 '22 21:07 jjonkman

@ebranlard could you merge dev into here and resolve the merge conflicts? If its ready to merge after that, I'll hit the button.

rafmudaf avatar Sep 26 '22 15:09 rafmudaf

Thanks, that's done. Note that it requires an updated r-test branch, (ua-dbemt) with an extra test case for this feature and updated input file descriptions.

ebranlard avatar Sep 26 '22 17:09 ebranlard

Is the r-test branch for this pull request, ua-dbemt, also ready to be merged into that repository's dev or is there more that needs to be updated there? Sorry, I don't fully follow your comment.

rafmudaf avatar Sep 26 '22 18:09 rafmudaf

I just wanted to note that this branch of openfast is pointing to the r-test branch ua-dbemt (I'm not sure if that's relevant or not). The r-test branch ua-dbemt has been merged with r-test dev (but not into dev). So it should all be ready to go.

ebranlard avatar Sep 26 '22 20:09 ebranlard

Ah I see now https://github.com/OpenFAST/r-test/pull/62, and I've merged that one, as well.

rafmudaf avatar Sep 26 '22 20:09 rafmudaf