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

SD: Bug fix for concentrated mass with CoG offset #2458

Merged
merged 2 commits into from
Oct 21, 2024

Conversation

luwang00
Copy link
Contributor

@luwang00 luwang00 commented Oct 9, 2024

This PR should be ready to merge after review.

Feature or improvement description
This PR aims to fix a known bug with non-zero CoG offset/eccentricity of concentrated masses in SubDyn (Issue #1710) that was causing problems for some users (Issue #2451). The following fixes are implemented:

  • The missing moments from the weight of offset concentrated masses are added during initialization when computing p%FG following the suggested fix of @ebranlard in Issue SD: concentrated mass with excentricity cannot be fully accounted for in SubDyn #1710.
  • The node index, weight, and CoG offset of all concentrated masses are now saved in p%CMassNode. p%CMassWeight, and p%CMassOffset to support GuyanLoadCorrection for fixed-bottom structures and self-weight update for floating structures during the run.
  • For fixed-bottom structures, an additional GuyanLoadCorrection term to the nodal moments is added. This term is in the form of cross_product( matmul(p%CMassOffset(i,:),orientation)-p%CMassOffset(i,:), (/0.0,0.0,-p%CMassWeight(i)/) ), where orientation is just the nodal orientation matrix due to the Guyan modes only. This additional correction term is zero if the offset/eccentricity is zero as expected.
  • For floating structures, the additional force and moment from the weight of the concentrated masses are simply recomputed at each time step based on the Guyan (rigid-body) displacement of the structure. This follows naturally from the changes made in PR Support for large platform yaw offset in OpenFAST #2203.

This PR also adds a warning that SubDyn currently does not account for geometric stiffness from cable pretension if the user specifies one or more cables with non-zero pretension. See Issue #1956 and PR #2363.

Related issue, if one exists
Issues #1710, #2451, #1956

Impacted areas of the software
SubDyn

Test results, if applicable

  • There is no change to existing test results. All r-tests passed.
  • An additional test was performed with a fixed-bottom structure having a concentrated mass with a large CoG offset. The results after the bug fix are effectively identical to those generated with the workaround proposed in Issue SD: concentrated mass with excentricity cannot be fully accounted for in SubDyn #1710, i.e., using a rigid link to connect the node for attachment to the concentrated mass CoG to avoid having non-zero eccentricity.
  • A similar test with a floating structure also shows consistent results between the two approaches.

@luwang00 luwang00 changed the title SD: attempt to fix concentrated mass with CoG offset SD: Bug fix for concentrated mass with CoG offset Oct 16, 2024
@andrew-platt andrew-platt requested a review from jjonkman October 17, 2024 16:18
@andrew-platt andrew-platt self-assigned this Oct 17, 2024
@andrew-platt andrew-platt added this to the v4.0.0 milestone Oct 17, 2024
@andrew-platt
Copy link
Collaborator

@RBergua, can you run a test of this?

Copy link
Collaborator

@jjonkman jjonkman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with the changes being implemented. Please merge once you are happy with the tests.

@RBergua
Copy link
Contributor

RBergua commented Oct 18, 2024

I took advantage of the system documented here: #2021, defined two lumped masses at (0, 0, 0) and defined two eccentricities. I'm able to get the same results as using the rigid link + lumped mass workaround. So, everything looks alright to me.

image

Maybe I would clarify in the documentation that when defining an eccentricity, the moments of inertia that the user provides are around the center of mass.

@andrew-platt andrew-platt merged commit 8f4945f into OpenFAST:dev Oct 21, 2024
63 checks passed
@luwang00 luwang00 deleted the b/SD_CMass branch December 24, 2024 22:56
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