Errors for the IEA-3.4-130

Hello everyone,
I am new to OpenFAST and would like to use the IEA-3.4-130-RWT for my master thesis. However, I am struggling to get it running properly. For some context, I installed OpenFAST v3.5.0 and rosco v2.7.0 using anaconda on Debian. Since there have been some changes to the RWT recently, I should say that I had the same problems with the previous version (using OF v3.4.0/1 and rosco 2.6.0).
Using all the defaults of the model, OpenFAST crashes after about 30s with the following output:

**************************************************************************************************
 OpenFAST

 Copyright (C) 2023 National Renewable Energy Laboratory
 Copyright (C) 2023 Envision Energy USA LTD

 This program is licensed under Apache License Version 2.0 and comes with ABSOLUTELY NO WARRANTY.
 See the "LICENSE" file distributed with this software for details.
 **************************************************************************************************

 OpenFAST--128-NOTFOUND
 Compile Info:
  - Compiler: GCC version 12.2.0
  - Architecture: 64 bit
  - Precision: single
  - OpenMP: No
  - Date: May 17 2023
  - Time: 10:23:29
 Execution Info:
  - Date: 06/06/2023
  - Time: 16:43:16+0200

 OpenFAST input file heading:
     Generated with AeroElasticSE FAST driver

 Running ElastoDyn.
 Nodal outputs section of ElastoDyn input file not found or improperly formatted.
 Running AeroDyn.
 AD15 Nodal Outputs: Nodal output section of AeroDyn input file not found or improperly formatted.
 Skipping nodal outputs.
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 1)
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 2)
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 3)
 Running InflowWind.
 Running ServoDyn.
 Running ServoDyn Interface for Bladed Controllers (using GNU Fortran for Linux).
 Using legacy Bladed DLL interface.
  Time: 0 of 60 seconds.
                                                                               
------------------------------------------------------------------------------
Running ROSCO-v2.7.0
A wind turbine controller framework for public use in the scientific field    
Developed in collaboration: National Renewable Energy Laboratory              
                            Delft University of Technology, The Netherlands   
------------------------------------------------------------------------------
Generator speed: 1140.0 RPM, Pitch angle:   3.3 deg, Power:     0.0 kW, Est. wind Speed:  10.0 m/s

 FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:AD_CalcOutput:RotCalcOutput:BEMT_CalcOut
 put(node 2, blade 3):UA_CalcOutput:UA_BlendSteady:Temporarily turning off UA due to high angle of
 attack or low relative velocity. This warning will not be repeated though the condition may
 persist.

 Warning: SkewedWakeCorrection encountered a large value of chi (90.637 deg), so the yaw
 correction will be limited. This warning will not be repeated though the condition may persist.
 See the AD15 chi output channels, and consider turning off the Pitt/Peters skew model (set
 SkewMod=1) if this condition persists.

 FAST_Solution:FAST_AdvanceStates:AD_UpdateStates:BEMT_UpdateStates:UpdatePhi(node 3, blade
 1):BEMT_UnCoupledSolve:There is no valid value of phi for these operating conditions: Vx =
 1.60879E-02, Vy = -2.324, rlocal = 6.3296, theta = 0.38327, geometric phi = 3.1347. This warning
 will not be repeated though the condition may persist. (See GeomPhi output channel.)

 FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:AD_CalcOutput:RotCalcOutput:BEMT_CalcOut
 put(node 30, blade 3):UA_CalcOutput:Mach number exceeds 0.3. Theory is invalid. This warning will
 not be repeated though the condition may persist.

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

Generator speed:  805.0 RPM, Pitch angle:   0.0 deg, Power:  1639.1 kW, Est. wind Speed:   6.7 m/s
 Time: 10 of 60 seconds.  Estimated final completion at 16:43:33.                                 Generator speed:  868.8 RPM, Pitch angle:   0.0 deg, Power:  2002.3 kW, Est. wind Speed:   8.9 m/s
 Time: 20 of 60 seconds.  Estimated final completion at 16:43:34.                                 
 FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:AD_CalcOutput:RotCalcOutput:BEMT_CalcOut
 put(node 30, blade 1):UA_CalcOutput:Mach number exceeds 1.0. Equations cannot be evaluated.

 OpenFAST encountered an error at simulation time 27.29 of 60 seconds.
  Simulation error level: FATAL ERROR

I’ve attempted some of the solutions that were already suggested in this forum:

  • setting reasonable starting values for omega and the pitch angle (11.75 rpm and 3.33° @ 10 m/s Wind → according to the lookup table of the RWT)
  • using smaller time steps
  • enabling correction steps

These changes had no effect. When I disable unsteady aerodynamics (AFAeroMod=1) the simulation gets stuck at around 70 seconds, but does not abort with an error. By setting SkewMod=1 the related warning in the output disappears, but the simulation still crashes after roughly 30s.

I looked at the output data and noticed some unexpected behaviour. Although the wind speed should remain steady at 10 m/s, it drops to zero after only 5 seconds of simulation. Meanwhile, the power remains non-zero throughout the simulation (as a new user, I can only upload one image).

image

I would appreciate any help or suggestions to get the model running. Thanks in advance!
Best regards,
Alex

Dear @Alexander.Moennig,

Given the wind speed in the hub frame of reference is dropping, can you clarify what wind conditions you are setting in InflowWind? And is the turbine yawing out of the wind?

Best regards,

Dear @Jason.Jonkman,
I am using the steady wind type and only varied the HWindSpeed parameter during my tests:

------- InflowWind v3.01.* INPUT FILE -------------------------------------------------------------------------
Generated with AeroElasticSE FAST driver
---------------------------------------------------------------------------------------------------------------
False                  Echo        - Echo input data to <RootName>.ech (flag)
1                      WindType    - switch for wind file type (1=steady; 2=uniform; 3=binary TurbSim FF; 4=binary Bladed-style FF; 5=HAWC format; 6=User defined; 7=native Bladed FF)
0.0                    PropagationDir - Direction of wind propagation (meteoroligical rotation from aligned with X (positive rotates towards -Y) -- degrees)
0.0                    VFlowAng    - Upflow angle (degrees) (not used for native Bladed format WindType=7)
False                  VelInterpCubic - Use cubic interpolation for velocity in time (false=linear, true=cubic) [Used with WindType=2,3,4,5,7]
1                      NWindVel    - Number of points to output the wind velocity    (0 to 9)
0.0                    WindVxiList - List of coordinates in the inertial X direction (m)
0.0                    WindVyiList - List of coordinates in the inertial Y direction (m)
110.0                  WindVziList - List of coordinates in the inertial Z direction (m)
================== Parameters for Steady Wind Conditions [used only for WindType = 1] =========================
10.0                   HWindSpeed  - Horizontal windspeed                            (m/s)
110.0                  RefHt       - Reference height for horizontal wind speed      (m)
0.2                    PLexp       - Power law exponent                              (-)
================== Parameters for Uniform wind file   [used only for WindType = 2] ============================
"none"                 Filename_Uni - Filename of time series data for uniform wind field.      (-)
110.0                  RefHt_Uni   - Reference height for horizontal wind speed                (m)
1.0                    RefLength   - Reference length for linear horizontal and vertical sheer (-)
================== Parameters for Binary TurbSim Full-Field files   [used only for WindType = 3] ==============
"none"                 FileName_BTS - Name of the Full field wind file to use (.bts)
================== Parameters for Binary Bladed-style Full-Field files   [used only for WindType = 4] =========
"none"                 FilenameRoot - Rootname of the full-field wind file to use (.wnd, .sum)
False                  TowerFile   - Have tower file (.twr) (flag)
================== Parameters for HAWC-format binary files  [Only used with WindType = 5] =====================
"none"                 FileName_u  - name of the file containing the u-component fluctuating wind (.bin)
"none"                 FileName_v  - name of the file containing the v-component fluctuating wind (.bin)
"none"                 FileName_w  - name of the file containing the w-component fluctuating wind (.bin)
2                      nx          - number of grids in the x direction (in the 3 files above) (-)
2                      ny          - number of grids in the y direction (in the 3 files above) (-)
2                      nz          - number of grids in the z direction (in the 3 files above) (-)
10                     dx          - distance (in meters) between points in the x direction    (m)
10                     dy          - distance (in meters) between points in the y direction    (m)
10                     dz          - distance (in meters) between points in the z direction    (m)
0.0                    RefHt_Hawc  - reference height; the height (in meters) of the vertical center of the grid (m)
-------------   Scaling parameters for turbulence   ---------------------------------------------------------
0                      ScaleMethod - Turbulence scaling method   [0 = none, 1 = direct scaling, 2 = calculate scaling factor based on a desired standard deviation]
1.0                    SFx         - Turbulence scaling factor for the x direction (-)   [ScaleMethod=1]
1.0                    SFy         - Turbulence scaling factor for the y direction (-)   [ScaleMethod=1]
1.0                    SFz         - Turbulence scaling factor for the z direction (-)   [ScaleMethod=1]
1.0                    SigmaFx     - Turbulence standard deviation to calculate scaling from in x direction (m/s)    [ScaleMethod=2]
1.0                    SigmaFy     - Turbulence standard deviation to calculate scaling from in y direction (m/s)    [ScaleMethod=2]
1.0                    SigmaFz     - Turbulence standard deviation to calculate scaling from in z direction (m/s)    [ScaleMethod=2]
-------------   Mean wind profile parameters (added to HAWC-format files)   ---------------------------------
0.0                    URef        - Mean u-component wind speed at the reference height (m/s)
0                      WindProfile - Wind profile type (0=constant;1=logarithmic,2=power law)
0.0                    PLExp_Hawc  - Power law exponent (-) (used for PL wind profile type only)
0.0                    Z0          - Surface roughness length (m) (used for LG wind profile type only)
0                      XOffset     - Initial offset in +x direction (shift of wind box) (-)
================== LIDAR Parameters ===========================================================================
0                      SensorType          - Switch for lidar configuration (0 = None, 1 = Single Point Beam(s), 2 = Continuous, 3 = Pulsed)
0                      NumPulseGate        - Number of lidar measurement gates (used when SensorType = 3)
30                     PulseSpacing        - Distance between range gates (m) (used when SensorType = 3)
0                      NumBeam             - Number of lidar measurement beams (0-5)(used when SensorType = 1)
-200                   FocalDistanceX      - Focal distance co-ordinates of the lidar beam in the x direction (relative to hub height) (only first coordinate used for SensorType 2 and 3) (m)
0                      FocalDistanceY      - Focal distance co-ordinates of the lidar beam in the y direction (relative to hub height) (only first coordinate used for SensorType 2 and 3) (m)
0                      FocalDistanceZ      - Focal distance co-ordinates of the lidar beam in the z direction (relative to hub height) (only first coordinate used for SensorType 2 and 3) (m)
0.0 0.0 0.0            RotorApexOffsetPos  - Offset of the lidar from hub height (m)
17                     URefLid             - Reference average wind speed for the lidar[m/s]
0.25                   MeasurementInterval - Time between each measurement [s]
False                  LidRadialVel        - TRUE => return radial component, FALSE => return 'x' direction estimate
1                      ConsiderHubMotion   - Flag whether to consider the hub motion's impact on Lidar measurements
====================== OUTPUT ==================================================
False                  SumPrint    - Print summary data to <RootName>.IfW.sum (flag)
OutList      - The next line(s) contains a list of output parameters.  See OutListParameters.xlsx for a listing of available output channels, (-)
"WindHubVelMag"
"WindDiskVelMag"
"WindHubVelX"
"WindHubVelY"
"WindHubVelZ"
END of input file (the word "END" must appear in the first 3 columns of this last OutList line)
---------------------------------------------------------------------------------------

The turbine doesn’t seem to yaw:
image

Thank you and best regards,
Alex

Dear @Alexander.Moennig,

I also noticed in your message that you have the following warning:

Small angle assumption violated in SUBROUTINE SmllRotTrans() due to a large platform displacement (ElastoDyn SetCoordSy). The solution may be inaccurate. Simulation continuing, but future warnings from SmllRotTrans() will be suppressed.

Are you modeling the IEA-3.4-130 reference wind turbine in an offshore configuration? The default model available on the IEA Wind Task 37 repository (https://github.com/IEAWindTask37/IEA-3.4-130-RWT/tree/master/openfast) is only available as a land-based configuration with the platform DOFs disabled, in which case I would not expect that you’d receive this warning.

Best regards,

Dear @Jason.Jonkman,
so by default, all the “offshore modules” are turned off in the .fst file:

---------------------- FEATURE SWITCHES AND FLAGS ------------------------------
1                      CompElast   - Compute structural dynamics (switch) {1=ElastoDyn; 2=ElastoDyn + BeamDyn for blades}
1                      CompInflow  - Compute inflow wind velocities (switch) {0=still air; 1=InflowWind; 2=external from OpenFOAM}
2                      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}
0                      CompHydro   - Compute hydrodynamic loads (switch) {0=None; 1=HydroDyn}
0                      CompSub     - Compute sub-structural dynamics (switch) {0=None; 1=SubDyn; 2=External Platform MCKF}
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}
0                      MHK         - MHK turbine type (switch) {0=Not an MHK turbine; 1=Fixed MHK turbine; 2=Floating MHK turbine}

But you were right, the platform DOFs are enabled (by default):

True                   PtfmSgDOF   - Platform horizontal surge translation DOF (flag)
True                   PtfmSwDOF   - Platform horizontal sway translation DOF (flag)
True                   PtfmHvDOF   - Platform vertical heave translation DOF (flag)
True                   PtfmRDOF    - Platform roll tilt rotation DOF (flag)
True                   PtfmPDOF    - Platform pitch tilt rotation DOF (flag)
True                   PtfmYDOF    - Platform yaw rotation DOF (flag)

After turning them all off, the model seems to be running okay, and the output data looks much better :slight_smile:

If you don’t mind, I have one final question. I still receive the following warning right at the start of the simulation:

FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:AD_CalcOutput:RotCalcOutput:BEMT_CalcOut
 put(node 2, blade 3):UA_CalcOutput:UA_BlendSteady:Temporarily turning off UA due to high angle of
 attack or low relative velocity. This warning will not be repeated though the condition may
 persist.

I could imagine that this is just due to the transient response in the first few seconds. But is it possible to turn off the setting that the warning is not repeated if the condition persists?

Thank you very much for your time! This has been very helpful for me.
Best regards,
Alex

Dear @Alexander.Moennig,

Yes, AeroDyn tracks a logical state called FirstWarn_UA_off that is used to display that warning only once. You could change this state if you want the message displayed all of the time (requiring a recompile of OpenFAST).

Best regards,

1 Like

Hello both,
thanks for highlighting this typo. I must have introduced it at some point while updating the OpenFAST input files, my sincere apologies for that. The files on the repo are now fixed, see here IEA-3.4-130-RWT/IEA-3.4-130-RWT_ElastoDyn.dat at c036f783b160604b133a2e4b7317320fde055743 · IEAWindTask37/IEA-3.4-130-RWT · GitHub
Best regards,
Pietro

1 Like