openfast icon indicating copy to clipboard operation
openfast copied to clipboard

Pretensioned cables in SubDyn and MoorDyn

Open RBergua opened this issue 4 months ago • 10 comments

As part of the USFLOWT project, we were modeling pretensioned cables in SubDyn. However, due to the limitations in SubDyn (e.g., linear assumption not able to capture slack conditions and the lack of geometric stiffness from the cable tension), we decided to try to model these pretensioned cables in MoorDyn. Image

The cables are attached to the stem on one side and to the leg at the other side. Both ends are part of SubDyn.

When looking at the tension in the upper and lower pretensioned cables modeled in MoorDyn, we observe the expected behaviour: Image

However, when looking at the structural side in the leg (SubDyn) there seems to be a lot of noise when including the cables in MoorDyn: Image

This is kind of surprising because the cables themselves do not show this noise in the tension.

For reference, the above results correspond to a gravity-only condition and we are running with 1 correction iteration in OpenFAST (increasing the correction iterations to 2 does not fix this issue).

This noise seems to be a numerical artifact since the frequency is very high. At the structural side, we are only including up to 1 Hz via the Craig-Bampton reduction in SubDyn.

We also increased the damping in SubDyn for the retained modes, but got the same results.

We even tried with CB modes = 0 in SubDyn and the noise was still there.

We tried reducing the time step and made the iteration error tolerance tighter in the glue-code, but had the same issues.

We don't really know/understand what is the source of this large noise at the structural side.

RBergua avatar Aug 19 '25 16:08 RBergua

Are you using the dev-tc branch?

andrew-platt avatar Aug 19 '25 16:08 andrew-platt

Yes. This is with dev-tc branch @andrew-platt

RBergua avatar Aug 19 '25 17:08 RBergua

After talking to @luwang00, we decided to try with SttcSolve = False in SubDyn.

Interestingly, with such setting, the noise at the structural side disappears. Of course, we need the SttcSolve part to have the proper structural output, but somehow it seems that the noise comes from the SttcSolve part.

Image

RBergua avatar Aug 19 '25 17:08 RBergua

@RBergua I think if you're going to use MoorDyn as part of the structural solve, then you're going to need it as one of the tight-coupling modules or you'll need to significantly reduce the time step. By the way, what time step are you using?

If you want to try putting MoorDyn as a tight-coupling module, open up FAST_Solver.f90 and look at lines 109-121. You'll need to move pack(modInds, ModIDs == Module_MD) from the p%iModOpt1 array to the p%iModTC array as shown below. Please give that a try and see if it has any effect.

   ! Indices of tight coupling modules
   p%iModTC = [pack(modInds, ModIDs == Module_ED), &
               pack(modInds, ModIDs == Module_BD), &
               pack(modInds, ModIDs == Module_SD), &
               pack(modInds, ModIDs == Module_MD)]

   ! Indices of Option 1 modules
   p%iModOpt1 = [pack(modInds, ModIDs == Module_SED), &
                 pack(modInds, ModIDs == Module_AD .and. &
                      p_FAST%MHK /= MHK_None), &
                 pack(modInds, ModIDs == Module_ExtPtfm), &
                 pack(modInds, ModIDs == Module_HD), &
                 pack(modInds, ModIDs == Module_Orca)]

deslaughter avatar Aug 19 '25 18:08 deslaughter

Thanks for the feedback, @deslaughter. For the gravity-only condition I'm using dt = 0.01 s. For operating conditions, I have to drop this time step by half: dt = 0.005 s.

I will try to put MoorDyn as a tight-coupling module and see what happens...

RBergua avatar Aug 19 '25 18:08 RBergua

@RBergua,

When I read your original post, I was also thinking the static solve is the culprit for the noise. This makes sense because the static modes have no damping. Thanks for confirming.

I'm also curious if increasing the MoorDyn structural damping has an influence.

Best regards,

jjonkman avatar Aug 19 '25 18:08 jjonkman

@deslaughter I compiled OpenFAST dev-tc including MoorDyn within the tight coupling scheme. However, when I try to run the simulation, it crashes after the initialization. Image

RBergua avatar Aug 19 '25 22:08 RBergua

Hi @deslaughter

Is there any trick to avoid the stack overflow? I even tried to run the original OpenFAST model (i.e., the pretensioned cables in SubDyn and only the catenary lines in MoorDyn) to check if MoorDyn, as part of the tight coupling, would handle this. Unfortunately, I face the same stack overflow issues.

OpenFAST writes the result at t = 0 s and then it blows up. And it does this with catenary lines only or with catenary lines + pretensioned lines in MoorDyn.

Only catenary lines in MoorDyn tight coupling: Image

Catenary lines and pretensioned cables in MoorDyn tight coupling: Image

RBergua avatar Sep 02 '25 21:09 RBergua

For completeness, below you can see the results for different damping levels in MoorDyn (green and orange lines). Image

As it can be observed, using critical damping or 1.5 times the critical damping for the pretensioned cables, does not eliminate the noise. Moreover, using the larger damping (i.e., 1.5*critical damping) requires a smaller time step in MoorDyn.

It's also important to remember that the current version of MoorDyn-F assumes that the cables are fully submerged. However, in reality, the upper cables are partially submerged. This means that in these simulations we are inducing higher hydrodynamic damping (we are using still water conditions) than we should. Helping us damping out the response.

Finally, as a reminder, the pretensioned cables themselves only show some noise at the beginning of the simulation as a result of the initial transient. But that noise disappears. However, at the structural side (i.e., the beams that correspond to the platform leg), the noise stays along the whole simulation (see first message for reference). Image

I guess we should try to figure out how to include MoorDyn as part of the tight coupling for scenarios like this (or if large buoys attached to the structure are used).

RBergua avatar Sep 04 '25 17:09 RBergua

For future reference, this noise due to the pretensioned cables in MoorDyn connecting 2 parts of SubDyn is also present in OpenFAST v4.1.2 (i.e., no tight coupling).

The cable tension looks great: Image

But the structural side appears with a lot of noise:

Image

RBergua avatar Sep 05 '25 14:09 RBergua