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
Linearization of ServoDyn Structural control elements #803
Linearization of ServoDyn Structural control elements #803
Conversation
Does not run (seg faults) since there are old routines still that need updating.
- new order: Blade, nacelle, tower, substructure - The order is very important in the linearization, so I reordered simply to keep it consistent everywhere.
- Update SrvD_JacobianPInput - still missing the dYdu user channels - also missing dXdu - Update GetOP for dx_op matrix - Updates to FAST_Lin.f90 so it now compiles and actually runs!!!! Just produces rubbish... There was some confusion on a prior commit about where the logmapping flag from FAST_Lin goes (doesn't go with the u% stuff, only for y% motion DCMs)
- this is necessary so I can set outputs for single StC during linearization (speeds up code)
- think this is working for BStC
- but u (unerturbed) was getting used to set the StC motion input perturbations :(
Increase rank of arrays so that blade number and StC instance are tracked. This simplifies assembling of jacobians in glue code.
Also a few blank lines moved for easier git comparisons
fix a few typos in Linear_SrvD_InputSolve_du, and add some comments
- Some states may not have been set to zero when unused (z-dof when Omni for example)
- Tower Line2 was incorrectly linearized. Changed to Linearize_Line2_to_Point from Linearize_Point_to_Point (this was causing NaNs in the A & C matrices in testing) - Incorrect indexing (Jac_Idx_BStC_y should have been Jac_Idx_BStC_u) in dUdu - Wrong tower mesh in the linearization.
4f5baa8
to
76e93b4
Compare
76e93b4
to
6fde9fc
Compare
This was causing some funny issues with linearization with NStCs
d82f101
to
49ec5ea
Compare
6690348
to
aeae69f
Compare
Details of new regression tests: StC_test_OC4Semi_Linear_Nac and StC_test_OC4Semi_Linear_TowThese test cases check linearization with a simple nacelle or tower top based structural control in ServoDyn. The results of the two cases should be identical Model descriptionOC4 semi-submersible with rigid structure, no contoller, yaw fixed, fixed rotation rate, only pitch and StC DOFs enabled. StC locations
ResultsFor these tests, the following results are expected from frequency analysis:
|
8b075f3
to
2df7316
Compare
|
||
ED_Out_Start = Indx_y_ED_BladeRoot_Start(y_ED, y_FAST, size(y_ED%BladeRootMotion)) ! start of last blade root | ||
ED_Out_Start = ED_Out_Start + y_ED%BladeRootMotion(size(y_ED%BladeRootMotion))%NNodes*18 ! N blade roots, 6 fields with 3 components per blade. | ||
END FUNCTION Indx_y_ED_Nacelle_Start |
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.
While this works, I'd recommend using one line instead: ED_Out_Start = Indx_y_ED_BladeRoot_Start(y_ED, y_FAST, MaxNBlades+1)
(similar to how this is done in the function Indx_y_ED_Platform_Start
). That way, if the number of fields on the Blade Root mesh change for linearization, you only have to change code in Indx_y_ED_BladeRoot_Start
instead of this function, too.
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.
Good idea! I'll make that change for the MoorDyn linearization PR (hopefully this week).
Feature description
In PR #664, the structural controls within ServoDyn were updated. This PR brings full system linearization to the structural control elements (StC's) for blade (BeamDyn and ElastoDyn), nacelle, tower, or substructure (SubDyn or ElastoDyn).
Related issue, if one exists
Impacted areas of the software
Additional supporting information
This project was funded through the ARPA-E funded ATLANTIS WEIS project in FY21.
Test results, if applicable
Results will be posted shortly.
Items to complete: