Skip to content
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

Solve Option 2 Performance enhancements #164

Merged
merged 10 commits into from
Nov 6, 2019

Conversation

bjonkman
Copy link
Contributor

@bjonkman bjonkman commented Sep 6, 2018

Parts of the SolveOption2 algorithm have been moved to the the AdvanceStates routine so that BeamDyn, InflowWind, AeroDyn, and ServoDyn use calculated inputs instead of extrapolations for inputs at t+dt.

This change allows BeamDyn to use calculated rotations and AeroDyn/DBEMT to use calculated velocities, which otherwise would require a correction step. In DBEMT this was a problem with high turbulence and low wind speeds.

Parts of the SolveOption2 algorithm have been moved to the the AdvanceStates routine so that BeamDyn, InflowWInd, AeroDyn, and ServoDyn use calculated inputs instead of extrapolations for inputs at t+dt. 

This change allows BeamDyn to use calculate rotations and AeroDyn/DBEMT to use calculated velocities, which otherwise would require a correction step. In DBEMT this was a problem with high turbulence and low wind speeds.
@rafmudaf rafmudaf requested a review from jjonkman September 12, 2018 15:08
@rafmudaf rafmudaf self-assigned this Sep 17, 2018
@rafmudaf rafmudaf removed their assignment Nov 9, 2018
@rafmudaf rafmudaf assigned andrew-platt and unassigned rafmudaf May 13, 2019
@andrew-platt
Copy link
Collaborator

andrew-platt commented Jun 18, 2019

After chattting @ashesh2512, we should rerun a test with BeamDyn coupled to OpenFAST (with all forces and degrees of freedom off) and check if the residual is zero once this is merged into dev.

Some external collaborators have noted that the timestep must be really small. @bjonkman added the code in this PR to fix this issue at Envision.

@bjonkman
Copy link
Contributor Author

As expected, due to the slight changes in inputs, the regression tests fail. However, the results do not look much different than the baseline. These differences should be similar to the what is seen if you add a correction step to the models (particularly the onshore models).

I would appreciate if this could be merged in the near future... it's been waiting more than a year.

@bjonkman
Copy link
Contributor Author

If it helps, here is the new algorithm for AdvanceStates (it uses calculated inputs when updating states):
image

@andrew-platt
Copy link
Collaborator

@bjonkman updated this doc with the AdvanceStates info: https://github.com/old-NWTC/FAST/blob/master/Docs/TheoryGuide/FAST_Algorithms/FAST_Algorithms_v8.tex

Do we have a good place to migrate some of this info?

@rafmudaf
Copy link
Collaborator

@rafmudaf rafmudaf assigned rafmudaf and unassigned jjonkman Nov 6, 2019
@rafmudaf rafmudaf merged commit 52a05c3 into OpenFAST:dev Nov 6, 2019
@bjonkman
Copy link
Contributor Author

bjonkman commented Nov 6, 2019

Thanks, @rafmudaf and @andrew-platt!

@bjonkman bjonkman deleted the f/SolveOption2_performance branch November 6, 2019 17:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants