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

MoorDyn: unexpected behavior at initialization #1978

Closed
RBergua opened this issue Jan 13, 2024 · 13 comments
Closed

MoorDyn: unexpected behavior at initialization #1978

RBergua opened this issue Jan 13, 2024 · 13 comments

Comments

@RBergua
Copy link
Contributor

RBergua commented Jan 13, 2024

Bug description
I'm modeling a system in OpenFAST with buoyant cans as follows:
image

The cans are modeled in MoorDyn by means of rods and I'm using the CoupledPinned attachment available in OpenFAST dev (4fafe68) to allow the 3 rotational DOFs at the connection with the legs (like a ball joint).

For these tests, I consider still water conditions and no inflow wind (i.e., it's a gravity-only condition). I run these tests with a rigid system. I only account for the rotation of the cans (CoupledPinned attachment in MoorDyn) and the 6 rigid DOFs of the platform.

When I use TmaxIC = 0 s (no initial computation in MoorDyn), I can observe that the platform pitch oscillates around -1.9 deg and the cans experience rotation amplitudes smaller than 1.5 deg. This behavior is the expected one.
image

However, if I define a given time to compute the initial condition (e.g., TmaxIC = 100), I get converged magnitudes for the fairlead tensions:
image

But the cans are all over the place (in the below image you can see that the cans are tilted around 85 deg at t = 0 s in OpenFAST, so the cans are almost horizontal instead of vertical) and the platform pitch behavior is erratic due to the very large motion of the cans:
image

Summarizing: Using TmaxIC different than 0 seconds in MoorDyn results in unexpected responses when using rods and CoupledPinned attachments.

Additional note: Maybe this large initial transient is related to the crashes experienced in MoorDyn when using Coupled attachments ("Warning: extreme pitch moment from body-attached Rod") that we commented offline.

@RyanDavies19
Copy link
Contributor

@RBergua Have you tried with CdScaleIC = 1? Maybe the larger drag in initialization is causing issues. Also, the way that the IC generation is set up is based on line tension convergence, so while the line tensions converge that doesn't necessarily mean the bodies positions converge.

@RBergua
Copy link
Contributor Author

RBergua commented Jan 14, 2024

Note that the rods in MoorDyn (buoyant cans) are defined in the upright position (i.e., vertical). So, the cans should maintain that vertical or almost vertical position if MoorDyn is properly accounting for the hydrostatics during the initialization. The only reason that would explain the cans tilting to almost 90 deg is the mean sea level not being properly accounted with regarding to the cans position or the hydrostatics not being considered properly.

For reference, below yo can see the results when CdScaleIC = 1. In the above results, CdScaleIC used was 2. In this case, the cans are tilted around 77 deg (before they were tilted around 85 deg).

image

@andrew-platt
Copy link
Collaborator

@RBergua, what does the platform heave look like? Is it possible the initial heave is set incorrectly allowing the cans rest at a large angle during initialization, but stabilize to near vertical after the heave settles?

@RBergua
Copy link
Contributor Author

RBergua commented Jan 16, 2024

The OpenFAST model is defined very close to the heave equilibrium position. The rods (buoyant cans) are 18 m long and half of the can (9 m) is submerged. The cans would become hydrostatically unstable (i.e, they would tip over) when the platform moves upwards around 7 m. This condition is never met in my simulations (OpenFAST and analytical).

Below you can see the evolution of platform pitch, platform heave and the can rotation when the initial conditions are not considered in MoorDyn. Like before, the platform pitch oscillates around -1.9 deg and the cans experience rotation amplitudes smaller than 1.5 deg. The platform heave oscillates around 0.2 m. This is the expected behavior.
image

Below you can see the same outputs when considering the initial conditions in MoorDyn. In this case, all magnitudes are very erratic. This results in a large initial transient. This behavior is not expected.
image

Below you can see the tilt orientation of the 6 bodies representative of the angle described by the can bundles per leg (the system has 6 legs):
image

Below you can also see the submergence of the cans (i.e., can length percentage that is wet):
image

As it can be observed, the cans move from a completely submerged condition to a completely dry condition. This non-physical behavior only appears when the initial computation in MoorDyn is considered.

@andrew-platt
Copy link
Collaborator

Good findings! It sort of looks like MD is not considering the entire can buoyancy during the initialization. Maybe just part of the can is considered, or perhaps the still water level is miscalculated?

If there is an issue with the water level, it may have been fixed in the dev-unstable-pointers with #1804. This has not been merged into the dev branch yet.

@RBergua
Copy link
Contributor Author

RBergua commented Jan 16, 2024

Thanks for the feedback, @andrew-platt. For reference, I'm defining MSL2SWL = 0. So, I guess the mean sea level is properly considered. But I agree that there seems to be a hydrostatic calculation issue.

@RyanDavies19
Copy link
Contributor

@RBergua Are you still running the cans as rods with 36 segments?

@RBergua
Copy link
Contributor Author

RBergua commented Jan 16, 2024

Yes. I'm using 36 segments. This results in a node every 0.5 m in length for the cans.

@RyanDavies19
Copy link
Contributor

I will look into this more then. That submergence does look strange to me. I have run USFLOWT in MD standalone as a free bodies and a coupled pinned bodies (with the translational positions fixed at their starting values for coupled pinned bodies). In both cases the submergence begins as 0.5 regardless of whether I use initial conditions or not.

@mattEhall
Copy link
Contributor

Hey all. Interesting problem. Just a quick note that in the "nonphysical" case Roger showed above, it looks like the can submergence variations are consistent with the (crazy) platform heave motion, which is caused by the cans initial sideways orientation. So the nonphysical part is strictly in the initial condition part, before t=0, imho. I'll try to help a bit with what's going on...

@mattEhall
Copy link
Contributor

We have a fix in the works mattEhall@3a7c63e

@RyanDavies19
Copy link
Contributor

See #2005 for the PR with the bug fix for this.

@RBergua
Copy link
Contributor Author

RBergua commented Feb 6, 2024

I confirm that this bug has been solved with commit e39453a in OpenFAST dev.
image
image
Thanks for the support! 👍

@RBergua RBergua closed this as completed Feb 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants