Platform motion appears strange for an onshore wind turbine

Dear Jason,

In recent days, I met a very strange case regarding the platform motion.

It is an offshore wind semisub-type wind turbine. To check the platform motion, I set in the FAST primary *.fst file the following conditions:

      1   CompElast       - Compute structural dynamics (switch) {1=ElastoDyn; 2=ElastoDyn + BeamDyn for blades}
      0   CompInflow      - Compute inflow wind velocities (switch) {0=still air; 1=InflowWind; 2=external from OpenFOAM}
      0   CompAero        - Compute aerodynamic loads (switch) {0=None; 1=AeroDyn v14; 2=AeroDyn v15}
      1   CompServo       - Compute control and electrical-drive dynamics (switch) {0=None; 1=ServoDyn}
      1   CompHydro       - Compute hydrodynamic loads (switch) {0=None; 1=HydroDyn}
      0   CompSub         - Compute sub-structural dynamics (switch) {0=None; 1=SubDyn}
      0   CompMooring     - Compute mooring system (switch) {0=None; 1=MAP++; 2=FEAMooring; 3=MoorDyn; 4=OrcaFlex}
      0   CompIce         - Compute ice loads (switch) {0=None; 1=IceFloe; 2=IceDyn}

And in the ElastoDyn file I enabled all the platform motion DOFs.

Then I run FAST for about 850 seconds. Something looking strange to me is that the PtfmSurge motion increases with the time and finally gets to an unbelievable big number (-12.14 meters). Because I already set the CompMooring to be zero which means that no mooring loads act on the platform, I’m wondering what will be the possible causes that lead the platform to move in surge?


Many thanks for reading the post and your discussion.
Yingyi Liu

Dear Yingyi Liu,

Is the rotor spinning and do you have a generator torque applied? These effects would induce loads/motion even without aerodynamic or hydrodynamic excitation. Regardless, the biggest motion I would expect you to see in this case is in PtfmHeave, where I would expect the whole turbine to be falling due to gravity in the absence of buoyancy or mooring reactions. I’m not sure I understand why you’d want to set up your simulation this way.

Best regards,

Dear Jason,

Yes you are correct, the heave motion is incredibly large. My previous question may not be correct.

So I updated the questions with graphs. I calculated with hydrostatic restoring. The platform surge motion is still incredibly large and increasing with time (see above figure in the updated previous post). Am I wrong in some model settings?

Thank you so much.
Yingyi Liu

Dear Yingyi Liu,

You have now enabled HydroDyn, but you haven’t told me what hydrodynamic settings you’ve enabled. Also, you never answered whether the rotor is spinning and torque is applied. I don’t have enough information to answer your question.

Best regards,

Dear Jason,

I set WaveMod=0 and CurrMod=0. I also made a corresponding strip-theory model, and add water or dry ballast on the floating platform to keep the platform hydrostatically balanced in heave, pitch and roll. (see attached HydroDyn file)

I was not able to understand clearly your questions about “spinning” and “torque” due to my limited knowledge of the terminology. Would you mind to explain a little more about: (1) what is “spinning” and (2) what kind of “torque” you are asking. I will then give you more information about that.

Thank you so much.

Best regards
Yingyi Liu
NRELOffshrBsline5MW_NezzySemi_HydroDyn.txt (22.5 KB)

Dear Yingyi Liu,

I don’t see any hydrodynamic excitation enabled in your model, but considering the platform oscillations in heave and pitch, it appears that the the model is not completely in equilibrium and the damping is small.

By “spinning”, I mean is the rotor rotating in ElastoDyn? By “torque”, I mean is the generator applying a torque in ServoDyn? Have you plotted e.g. RotSpeed from ElastoDyn and GenTq from ServoDyn?

Best regards,

Dear Jason,

Why did you say it was not completely in equilibrium (from the heave and pitch motion plots, the platform oscillates nearly around the x-axes: the zero motion line), is it possible to make it in equilibrium?

By setting which parameters can I increase the damping?

I have checked that the RotSpeed and GenTq are almost zeroes. I attach the information (including the output) at the end of this post.

Best regards,
Yingyi Liu
Test27.txt (500 KB)
FAST_Model_hydrostatic.zip (1.11 MB)

Dear Yingyi Liu,

I took a quick look at your model and ran a simulation. When I run your model through FAST v8.16, I get a bit different result from you e.g. my PtfmPitch averages around 0.5 degrees and yours averages about -0.02 degrees and my PtfmHeave averages around 0.5 m and yours averages around -0.1 m. Did you not send me the correct model? My simulation produces some negative surge motion, but not quite as much as yours.

Regardless, I would guess that the surge motion is due to the start-up transient i.e. the platform pitch and heave are not zero, but have some residual motion due to the buoyancy balancing with the weight of the system and the system deflecting under gravity loading. Because you have absolutely no platform surge restoring mechanism, any minor push will result in motion and the platform will not return back to zero.

You can set hydrodynamic damping through wave radiation from the potential-flow solution, viscous drag from the Morison solution, and through the additional platform linear and quadratic damping matrices.

Best regards,

Dear Jason,

I sent you the exact same model I was using. And I was using a modified FAST executable file for simulations in the above posts. There may be some mistakes in the coding. I need to check the places where I have modified, to ensure the consistency with FAST v8.16. Thank you for your reminding.

In order to get rid of that difference, at this time I use FAST v8.16 to do the simulation. My results are the same with yours, i.e., the PtfmPitch averages around 0.5 degrees and the PtfmHeave averages around 0.5 m, i.e., the model is not completely in equilibrium.

Therefore I adjust slightly the dry ballast and the PtfmVol0 to make the model in a very good equilibrium (see the attached Test27.out). I run the simulation again. To my surprise, the PtfmSurge still increases to an incredible number with the increase of time. (I attach its FAST model files except the FAST v8.16 and the MAP_x64.dll, at the end of this post.)

I then add a small value e.g. 1.0E+03 to the term of AddCLin(1,1), in order to provide the platform with a slight restoring force to pull the platform back when its surge motion happens. At this time the surge motion behaves like a sinusoidal time series (see the attached Test27_AddCLin11.out), and the platform really goes back from time to time. But is it reasonable to add such a value to the place of AddCLin(1,1)? How do you think of this?

Best regards,
Yingyi Liu
Test27.txt (499 KB)
FAST_Model_hydrostatic_v2.zip (2.52 MB)
Test27_AddCLin11.txt (499 KB)

Dear Yingyi Liu,

I would normally expect a mooring system to provide some amount of restoring to a floating wind system in surge and sway (and perhaps other platform degrees of freedom). But in your case, you haven’t enabled any mooring module, so, I would expect the platform to drift–not returning to its equilibrium position. Including AddCLin(1,1) is like a substitute for enabling a mooring module.

Best regards,

Dear Jason,

Based on your comments, I substitute AddCLin(1,1) with a mooring system. Two mooring line solvers are used respectively in the simulation, i.e., MAP++ and MoorDyn. The mooring line layout is shown in the below picture. Because of the line weight and pretension, I adjust slightly the dry ballast and the PtfmVol0 of the previous FAST model to make the new model in a good equilibrium. (The FAST model including inputs for MAP++ and MoorDyn and simulation outputs are attached at the end of this post.)

From the simulation results, I find that including MAP++ solver can provide a surge restoring force like that from the AddCLin(1,1) term in the previous post, while MoorDyn cannot. In the latter case, the PtfmSurge still increases to an incredible number. Because I have set in the two mooring solvers same unit-weight, length and mooring layout, I’m not able to understand why the two simulation results are so different. So does that mean MoorDyn cannot provide the same mooring restoring matrix with that of MAP++? In such case which will be the correct solver that I should use?

Thank you so much.
Best regards,
Yingyi Liu


FAST_Model_hydrostatic_v3.zip (1.9 MB)

Dear Yingyi Liu,

I played around with your model a bit and noticed that you only had 7 nodes in your MoorDyn model. Increasing this number e.g. to 30-40 nodes results in a more converged solution that includes restoring in platform surge.

Normally I’d expect MAP++ and MoorDyn to result in similar global platform motions and have the same mean fairlead and mooring tensions, but have different tension oscillations (with MoorDyn having greater mooring excursions due to dynamic effects). However, I don’t see this behaviour in your model–even with increasing nodes in MoorDyn, the mean tensions does not appear to converge to that of MAP++. I’m not sure I yet understand why, but it could be due to differences in the seabed model and/or the three-dimensional nature of the line that is captured in MoorDyn, but not MAP++.

NREL normally recommends using MoorDyn in most cases.

Best regards,

Dear Dr. Jason

I am simulating(1-3600sec) Testcert25 for a DeepCwind type model but here i am getting incredibly large heave motion (as shown in the figure 1) when heave motion enabled (=True) and all other five motions disabled (=false) in the ElastoDyn input file with a warning as

FAST_Solution:FAST_AdvanceStates:ED_ABM4:SetCoordSy:Small angle assumption violated in SUBROUTINE
SmllRotTrans() due to a large blade deflection (ElastoDyn SetCoordSy). The solution may be
inaccurate. Simulation continuing, but future warnings from SmllRotTrans() will be suppressed.
Additional debugging message from SUBROUTINE SmllRotTrans(): 1.7625 s

could you please tell me what mistake i am doing during simulating the programme. Please find input files.

Best regards
Akshay
DeepCwind.rar (18 KB)

Dear Akshay,

Looking briefly at your files, I see that you changed the platform mass (PtfmMass) and undisplaced platform volume (PtfmVol0) relative to Test25. Without changing the wind turbine and moorings of Test25, to keep the system in hydrostatic equilibrium in the vertical direction, I would expect that the quantity

( WtrDens*Gravity*PtfmVol0 - PtfmMass*Gravity )

would be the same between the two models. But in your modification to Test25, clearly this quantity has increased, which means that the platform would heave upward as you are seeing in your FAST solution.

See section 6.8.1 of the draft HydroDyn User’s Guide and Theory Manual (wind.nrel.gov/nwtc/docs/HydroDyn_Manual.pdf) for guidance on how to create a floating offshore wind turbine model that is in equilibrium in the vertical direction.

Best regards,

Dear Dr. Jason

Thanks for your quick reply.

Due to my limited knowledge in this field i did not understand you so could you please elaborate what did you mean by “the two models”.

Please have a look below given calculation to ensure stability in the vertical direction
water density=1025 kg/m3
g=9.81 m/s2
Total mooring pretension, T=6358481.025 N
Total Mass (Including water ballast), m=22043356 kg
As per HydroDyn manual
1025x9.81xV= T+mg =137187702.505
V=13706.044 m3
because with PtfmVol0=13706.044 m3, FAST encountered to an error as

Timestep: 7 of 3600 seconds. Estimated final completion at 17:49:13.

FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:InflowWind_CalcOutput:CalcOutput:IfW_Uni
formWind_CalcOutput:GetWindSpeed:Height must not be negative.
IfW_UniformWind_CalcOutput: Error calculating the wind speed at position (-2.827, -19.598,
-0.26402) in the wind-file coordinates

FAST encountered an error at simulation time 7.2125 of 3600 seconds.
Simulation error level: FATAL ERROR

please find necessary sum and input files

Best regards
Akshay
DeepCwind.rar (684 KB)

Dear Akshay,

By “the two models”, I mean Test25 that NREL has distributed (model 1) and your model (model 2) are different.

I’m sorry, but I don’t understand where you getting your numbers from. Where are you getting?

  • Total mooring pretension, T=6358481.025 N
  • Total Mass (Including water ballast), m=22043356 kg
  • Even if these values are correct, I’m not calculating T+mg = 137187702.505 N or V=13706.044 m3

(These don’t seem to match the values given in the summary files.)

I’m also not sure where your file DeepCwind.MAP.sum came from. This appears to be a MAP++ summary file, but your FAST model says you are using MoorDyn instead of MAP++, so, I’m confused. I also noticed that your MoorDyn model uses an anchor depth of 200 m while your MAP++ model is using an anchor depth of 250 m.

Best regards,

Dear Dr Jason

I apologise you for inconvenience caused in the last post. here is new calculation in order to assure numerical stability for my model.
Tower-top Mass(kg) = 349389.844
Tower Mass(kg) = 249718.000
Platform Mass(kg) = 11322000.000
Total mass Incl. Platform(kg) = 11921108.000 or 116906133.768 (N)…(i)
As per NREL report, total vertical pretension weight = 1890000 (N)…(ii) (for DeepCwind)
As per HydroDyn section 6.8.3, (i)+(ii)=1025x9.80665xDisplaced volume(V=PtfmVol0)
118796133.768 = 1025x9.80665xV
V= 11818.375 m3
but now FAST is aborting and showing a FATAL error as following:

Timestep: 20 of 60 seconds. Estimated final completion at 13:58:60.

FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:InflowWind_CalcOutput:CalcOutput:IfW_Uni
formWind_CalcOutput:GetWindSpeed:Height must not be negative.
IfW_UniformWind_CalcOutput: Error calculating the wind speed at position (-9.6808, -15.227,
-0.11973) in the wind-file coordinates

FAST encountered an error at simulation time 20.825 of 60 seconds.
Simulation error level: FATAL ERROR

Aborting FAST.

Could you please suggest me what correction is required in the below attached input files in order to run complete simulation.
and could you please let me know where i can find explanation of MAP++ output file format.

Best regards
Akshay
Test25_DeepCwind.zip (758 KB)

Dear Akshay,

You are getting closer, but your platform is still not in vertical equilibrium. While I agree with your math, and I agree that the DeepCwind semi has a vertical mooring pretension of 1839000 N, I see that you have changed the vertical pretension in your model by changing the water depth (and anchor depth) from 200 to 250 m. Without redesigning the mooring system, the lines become more taught and the total vertical mooring pretension increases to 3*1006819.989 = 3020459.967 N (as reported in your MAP++ summary file). Thus, your system will still want to heave downward.

I also noticed that while you have now removed the water ballast from your HydroDyn model, you kept the effect of the ballast on the hydrostatic stiffness. Because you’ve removed the water ballast, you should also set the 6x6 matrix AddBLin to zero in your HydroDyn input file.

MAP++ is documented here: map-plus-plus.readthedocs.io/en/ … index.html.

Best regards,

Dear Dr Jason

I am doing project on the offshore 10 Mw DTU wind turbine (Sparbouy).

I am getting problem while running the simulation and its I think problem of the system of vertical equilibrium.I have calculated the vertical mooring pretension.It is around =2294812.291 N for my system.Below I have attache the vertical force calculation and hydraulics calculation of my whole system.

Also without wind and waves I am not getting the platform motions close to 0.But my hydraulics calculation is look like a correct as you can see below i have attached the ballast below the Spar to system stay stable.

I am getting error as below,

[b]Timestep: 28 of 50 seconds. Estimated final completion at 23:53:52.

FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:InflowWind_CalcOutput:
CalcOutput:IfW_Uni
formWind_CalcOutput:GetWindSpeed:Height must not be negative.
IfW_UniformWind_CalcOutput: Error calculating the wind speed at position (14.773
, -21.826,
-0.14772) in the wind-file coordinates

FAST encountered an error at simulation time 28.663 of 50 seconds.
Simulation error level: FATAL ERROR

Aborting OpenFAST

[/b]

Also i have attached my inputs files as below.

I hope you can guide me to solve my this problem as soon as possible.

Thank you so much

Best Regards
Mitesh Ramani
InputFiles.zip (18.2 KB)
Vertical force at fairlead.xlsx (10.3 KB)
Hydrostatics Calculation .xlsx (12.3 KB)

Dear Mitesh,

I don’t see that you’ve attached the vertical equilibrium calculations or input files.

Regardless, I’m not sure how much your floating wind turbine is heaving in the OpenFAST model, but you should ensure that the lowest aerodynamic node (likely on the tower) in AeroDyn is well above the mean sea level (MSL) such that when the floating platform heaves downward, the lowest aerodynamic node does not pass below the water surface and fall outside the domain of the wind field.

Best regards,