How to set appropriate convergence conditions when analyzing floating wind turbines with flexible beam elements in SubDyn

Thank you for all your help.

I would like to know how to set the appropriate convergence conditions when analyzing a floating wind turbine with SubDyn’s flexible beam elements.

I am using SubDyn to analyze a semi-sub-type floating offshore wind turbine, SubDyn using flexible beam elements and HydroDyn using strip theory (not using potential theory).

The flexible beam elements consider frequencies down to about 8 Hz with Nmodes=21. The analysis is performed with multiple random numbers for irregular waves with a wave height of about 13 m and a wave period of about 13 s. The wind input is a steady wind of approximately 50 m/s. The analysis time is 3600 s. Analysis under these conditions stops after about 200 to 2000 s, depending on the case. The error message at that time is attached.

What convergence conditions should be set to avoid this error?
Note that there is no unusual behavior in the time series of the mooring tension and the motion of the floating body in the case where this error occurred. Also, this error does not occur when the floating body is rigid with Nmodes=0 or when potential theory is used without SubDyn.

Some of the conditions used are shown below.
0.005 DT , I tryed 0.005~0.001
2 InterpOrder
3 NumCrctn I tried 1~5
2.0 DT_UJac
60000000 UJacSclFact

3 IntMethod
True SttcSolve
True GuyanLoadCorrection
3 FEMMod
1 NDiv
True CBMod
21 Nmodes
0.20 JDampings
0 GuyanDampMod

0.001 dtM , I tryed 0.001~0.0001
3.0e6 kbot
3.0e5 cbot
1.0 dtIC
120.0 TmaxIC
4.0 CdScaleIC
0.001 threshIC , I tryed 0.01~0.001

There was one error in my earlier post.
The same error occurred even when Nmodes=0. The calculation for Nmodes=0 was done with regular waves (Hs=5m) as input. The error occurred at Ts=22s and Ts=27s. The calculated natural period of the floating body is about 21 seconds for Heave and about 24 seconds for Pitch. The period at which the error occurred seems to be close to or far from the natural period of the floating body.

Dear @Yosuke.Matsumoto,

Your solve settings look reasonable to me and match our recommended guidance for modeling floating offshore wind turbines with substructure flexibility.

Can you pick one of the cases where MoorDyn is triggering this error and share plots of the platform motion and mooring line tensions around the time leading up to the error?

Best regards,

This is an explanation of the above figure.
This computation stopped after approximately 400s.
The wind input is steady wind.
Waves are input as irregular waves.
Wind and waves are input from the direction of 0 degrees.
The motion of the floating body in six directions is output. Sway and Yaw are small values because wind and waves are input from 0 degree.
L1N100T is the response of the fairleaders in the mooring output.

Supplementary analysis conditions. The following conditions are used in the calculations.
CompServo =0 and FlapDOF1 to YawDOF are set to False because we are not interested in the wind turbine motion.

-.fst file-.
1 CompElast
1 CompInflow
2 CompAero
0 CompServo
1 CompHydro
1 CompSub
3 CompMooring
0 CompIce

False FlapDOF1
False FlapDOF2
False EdgeDOF
False TeetDOF
False DrTrDOF
False GenDOF
False YawDOF
True PtfmSgDOF
True PtfmSwDOF
True PtfmHvDOF
True PtfmRDOF
True PtfmPDOF
True PtfmYDOF

Hm, it’s hard to know for sure, but there are a couple clues:

  1. The mooring line tensions look quite noisy at the beginning, which might suggest the MoorDyn model is just barely stable.
  2. It looks like the time where it stops has a bit larger motions than the previous 400 seconds, so maybe it is the larger motion amplitudes that is triggering the failure.

So my initial suggestion would be to adjust the MoorDyn setup to be more stable. If reducing dtM from 0.001 s to 0.0001 s didn’t help, another option would be to use fewer segments per mooring line. If that doesn’t help, it’s hard to say more without seeing the input file.

Thanks for the important tips.
I have done many case studies and reached my goal of 4000s.
I will share the results of the case studies with you in the hope that they will be helpful to you. I would like your advice if there is a better setup for these results.

The results give me the impression that it is very difficult to set up stable conditions for analysis. I hope the solution will be more stable.

Dear @Yosuke.Matsumoto,

If I understand correctly, reducing dtM and NumSegs in MoorDyn, as well as adding an extra correction step (NumCrctn = 2) in OpenFAST, was the key to success for your model.

FYI: We are in the process of developing a new tight coupling algorithm in OpenFAST that we expect will produce more numerically stable results at larger time steps. Preliminary results are showing dramatic speed ups of 10-100x faster execution time, depending on the model. Hopefully this will help your and other OpenFAST models. We will be presenting the latest results at the upcoming NAWEA / WindTech 2023 conference, which will be followed by a journal publication.

Best regards

I based my calculations on the successful Case 8 conditions (.fast_DT=0.005,MoorDyn_dtM0.0001,NumSegs50) with 6 different random seed patterns for the waves. In addition, calculations were performed with NumCrctn varied from 1, 2, 3, and 5. The “n” in the legend of the figure represents NumCrctn.
The results show that most cases could not be analyzed up to the target 4000s. The conditions under which the analysis fails seem to be random, regardless of Seed or NumCrctn.

Hopefully the new algorithm you are developing can be used.

Dear @Yosuke.Matsumoto,

You’ll have to be patient for the new tight coupling algorithm. We have it working to support ElastoDyn-BeamDyn coupling, but haven’t extended the implementation to support offshore support structures (HydroDyn, SubDyn, etc.) yet.

Does reducing NumSegs in MoorDyn improve the convergence of your model. NumSegs = 50 still seems high to me.

Best regards,