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

Implementation of rectangular members in HD and SD #2646

Open
wants to merge 42 commits into
base: dev
Choose a base branch
from

Conversation

luwang00
Copy link
Contributor

@luwang00 luwang00 commented Feb 20, 2025

Feature or improvement description
This PR adds the implementation of rectangular members in HydroDyn and SubDyn. It also includes various other bug fixes and improvements including the following:

HydroDyn

  • In HydroDyn, ballast water is now handled consistently assuming no internal free surface when computing the inertial loads and the internal hydrostatic loads. This is consistent with the fact that HydroDyn does not model internal sloshing.
  • In HydroDyn, corrections were made to the rotational equations of motion of ballast water and marine growth.
  • In HydroDyn, inertial loads from marine growth on joints were previously zeroed when the joint emerges from water. This is now corrected.

SubDyn

  • In SubDyn, the implementation of arbitrary-section beams was previously incomplete. This is addressed by this PR.
  • In SubDyn, it was previously assumed that the torsion constant is the same as the section polar area moment of inertia for arbitrary beam sections. However, this is only true for circular sections. Now, two separate values can be provided for the torsion constant and polar area moment of inertia for arbitrary beam sections.
  • In SubDyn, the orientation of arbitrary-section beams was previously set according to user-defined direction cosine matrices. However, there was no check on whether the user-defined direction cosine matrices are valid rotation matrices, or that they are consistent with the member end joints. Now the orientation of arbitrary-section beams is determined based on its two end joints plus a spin angle about its axis, same as rectangular members. The spin angle is also introduced for circular members to give users more control on the element local coordinate system for load outputs. Now, only spring elements still use the user-defined direction cosine matrices.
  • In SubDyn, addressed Issue SubDyn: direction cosine matrix has no checks #2634 by checking the orthogonality and the determinants of user-defined direction cosine matrices.
  • SubDyn now errors out if the COSMID of a spring member references a nonexistent entry in the direction cosine matrix table. Previously, it defaults back to the identity matrix by a series of coincidence without reporting an error.

OpenFAST_IO

  • OpenFAST_IO has been updated with the new HydroDyn and SubDyn inputs.

TO-DOs
The HydroDyn strip-theory member visualization should be updated to support rectangular members. @andrew-platt and @deslaughter will help with this.

Related issue, if one exists
Issue #2634

Impacted areas of the software
HydroDyn, SubDyn, OpenFAST_IO

Test results, if applicable

  • Due to the changes and bug fixes to ballast-water and marine-growth modeling, results of r-test cases involving either need to be updated.
  • The HydroDyn and SubDyn input files also need to be updated due to the addition of rectangular members. These are completed in the referenced r-test commit, and all tests passed.
  • Added a new r-test for the semi-numerical computation of hydrostatic loads on rectangular members.
  • A new r-test with a cantilever rectangular-section beam in SubDyn is developed by @RBergua and added through this PR.

Mostly finished member and joint initialization
…ngular members. Also introduced spin about member axis.
…hydrostatic loads if one of the edge length is zero
…al and rectangular members, added missing input checks, and made various other small fixes
Also patched up the arbitrary-section beam implementation.
…lar (for outputs), rectangular, and arbitrary sections
…rectangular beam sections

* Added alternative torsion constant and shear coefficient estimates for solid rectangular sections in addition to thin-walled sections.
* Use a more accurate formula for the shear coefficient of thin-walled rectangular sections.
* Added a warning message if the section is neither solid nor thin-walled.
* Other small bug fixes.
@RBergua
Copy link
Contributor

RBergua commented Feb 27, 2025

I performed one verification for a cantilever beam using rectangular cross sections. This verification test is based on the OC7 Phase II project (undergoing).

The first part of the verification is a static deflection test. The system and boundary conditions are as follows:
image

The properties of the flexible pontoon are:
image

The properties of the outer column (lumped mass) are:
image

I compared the results from SubDyn (linear assumption) against SAMCEF (non-linear approach). As can be observed, there is excellent agreement between both codes for the vertical deflections along the pontoon:
image

In addition, another verification regarding the eigenfrequencies of the system was performed. The below table compares the first 4 eigenfrequencies. Once again, very good agreement between codes is obtained:
image

This verification test will be added in the r-test repository for reference.

@luwang00 luwang00 marked this pull request as ready for review February 28, 2025 19:15
@andrew-platt andrew-platt self-assigned this Mar 7, 2025
@andrew-platt andrew-platt added this to the v4.1.0 milestone Mar 7, 2025
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.

3 participants