-
Notifications
You must be signed in to change notification settings - Fork 461
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
Merge dev to dev-unstable after 3.5.3 updates #2164
Merged
andrew-platt
merged 284 commits into
dev-unstable-pointers
from
m/3.5.3_dev_to_dev-unstable
Apr 22, 2024
Merged
Merge dev to dev-unstable after 3.5.3 updates #2164
andrew-platt
merged 284 commits into
dev-unstable-pointers
from
m/3.5.3_dev_to_dev-unstable
Apr 22, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…kwards compatibility
Minor MD bug fixes: Bathymetry
Change input string size for bathgrid and waterkin input files
The motions in dUdy from BD were starting at the incorrect index. Instead of starting at the motion, the index started at the root load output. This resulted in a shift of all the dUdy terms coupling y_BD motion to u_AD blade motion. This error has existed since at least commit 315bb29 on April 13, 2018 Co-authored-by: Derek Slaughter <deslaughter@gmail.com>
Lin tests: increase out precision, error printing full filename, add SD linearization test
…h documentation) This results in some differences in the dUdy, A, and C matrices, but basically the same frequencies Co-authored-by: Derek Slaughter <deslaughter@gmail.com>
Fix BD + AD linearization indexing (negative damping results)
When the change in reference rotation was implemented in v3.5.0, it effectively changed the states to be in the rotating frame. The existing method for putting the state Jacobians into the rotating frame involved calculating the difference in rotation between the root mesh reference orientation and the root mesh current orientation. Originally, the reference orientation always aligned with the blade root reference orientation inside BeamDyn. However, this is not a valid assumption when ChangeRefFrame = .true. as the blade root reference is updated by UpdateStates at every step. This commit changes two things: first, if ChangeRefFrame is true, then p%RotStates is also set to true because the states are in the rotating frame; second, the Jacobian is now rotated by the difference between the root mesh current orientation and BeamDyn's root reference orientation. These orientations will be the same after UpdateStates, but the correction is still applied in case the Jacobian routines are called with a different root mesh orientation.
…_BD_Linear_Aero due to fixing this bug
Fix bug in BD linearization resulting from reference rotation change
our regression tests found this issue
@rdamiani pointed out in issue #2059 that the existing method for handling file paths with `UserSubs` is difficult as it requires putting all the user input files in the same location as the ServoDyn file. This commit is from recomendations from @rdamiani for a method he has had good success with. Co-authored-by:rdamiani <r.damiani@RRDengineering.com>
Co-authored-by: rdamiani <r.damiani@RRDengineering.com>
…mments and changing names of some variables
Docs/update for 3.5.3 release
GH actions: build docker on release instead of merge
Summary of all PR's included in this merge (PR #2121): * Add 4 linearization regression tests * Upgrade to setup-python@v5 and cache@v4 for GH actions * Update fast_linearization_file.py to use less memory * Use env var to set CTest parallel runs, reduce to 2 * Use more efficient method to compare linearization matrices in regression tests. * Fix printing bug in Python Linear Regression test script * GH actions: upgrade upload-artifact to v4 * Fix bug in HD_Perturb_x where SS_Exctn%numStates was used instead of SS_Rdtn%numStates * GH actions: upgrade checkout to v4 and setup-python to v5 * Remove typo in warning, retains c/con option for output flags for backwards compatibility * Bathymetry grid bug and slope normal vector bug fix * Change input string size for bathgrid and waterkin * Lin tests: increase out precision, error printing full filename * Add SubDyn Linearization test case * Lin: incorrect BD index in dUdy for AD motion * Lin: sum BD blade root motion to hub moment m_ud term (consistent with documentation) * Fix bug in BD linearization resulting from reference rotation change * Improve handling of Paths for SrvD UserSubs Input Files * Revert " Resolve BeamDyn initial strain for rotated blade" * BeamDyn: Disable changing the reference frame * BeamDyn: Implement new initial strain fix based on OpenTurbine documentation * SrvD: fix typo in registry from PR #2079 * BeamDyn: Restore previous fix to pitch actuator logic in SetParameters * FASTlib: Turbine(:) array must use Fortran index 1 start * FASTlib: change ExternInitData%TurbineID to %TurbIDforName * FASTlib: change iTurb inputs to routines with c-bindings to index 0 * Set 5MW_Land_DLL_WTurb_cpp as a CPP_API test, not CPP_DRIVER * Adjust if statements in FAST_OpFM_Step for iTurb being in range 1:NumTurbines. * CPP testing: fix logic setting exec name in CMakeList.txt * TurbSim: increase filename to 1024 characters * VSbuild: always build Registry as release x64 * Add initialization of MHK, WtrDpth, MSL2SWL in IfW_InitInp for AWAE module * Use of potentially unallocated array in AeroDyn_AllBldNdOuts. * VSbuild: increase stack size for FAST.Farm * CMake: openmp optional for FF and CPP if not explicitly requested (#2120) * Update docs for release 3.5.3
Merge v3.5.3 into dev
These cases are failing right now -- missing corrections from an upcoming PR. Set the baselines to those form 3.5.3 for comparison when we merge in further updates
deslaughter
approved these changes
Apr 19, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is ready for merging.
Feature or improvement description
Version 3.5.3 brought numerous bugfixes to the code. After the release, those improvements were merged into
dev
with PR #2156. This PR brings those updates to thedev-unstable-pointers
branch along with new features added to thedev
branch in the last few months.Related issue, if one exists
#2121
#2156
Impacted areas of the software
Some of the linearization cases are not working properly after this merge. Another PR #2014 contains additional code restructuring and corrections for linearization.
Test results, if applicable
The following test cases were updated:
5MW_Land_BD_Linear
5MW_OC3Spar_Linear
Fake5MW_AeroLin_B1_UA4_DBEMT3
Fake5MW_AeroLin_B3_UA6
The following cases are disabled until further linearization updates are merged (baselines were taken from 3.5.3 for comparisons when re-enabled):
5MW_Land_BD_Linear_Aero
5MW_Land_Linear_Aero