1. Introduction
Floating Offshore Wind Turbines (FOWTs) are renewable energy assets built on floating foundations that harness the power of offshore wind. The floating base allows them to be deployed in deeper waters where the wind is stronger and more consistent, due to the lack of obstacles in those regions .
Figure 1. Floating Offshore Structure
This article offers an overview of the Floating Offshore Wind Turbine successfully constructed by Akselos. Following this introduction, users will gain insight into the assessment type and necessary actions required to interact with the model on Akselos Modeler.
2. About Floating Offshore Wind Turbine DT Model
The Floating Offshore Wind Turbine is fully built on Akselos platform: Akselos Modeler.
The model configurations contain the topics below:
- Material and Thickness
- Boundary Conditions
- Applying Loads
- Combination for different Scenarios
Figure 2. Floating Offshore Wind Turbine model
Model summary:
Degrees of Freedom: Approximately 1.86 million
Element type:
- Shell: Pontoon system
- Shell with 1D stiffener: All columns
- 1D beam: 6DOF spring connector at 3 mooring lines
Material: Material for 1D stiffeners and shell
- Density: Scale up due to weight distribution (1,834 – 86,100 kg/m^3)
- Poisson ratio: 0.3
- Young modulus: 215 GPa
Boundary Condition:
- Constrain all DOFs at the end of moorings
- Spring connector at 3 mooring lines
2.1. Material and Thickness
The whole structure is fully constructed with Elasticity Isotropic Material materials.
Subdomain type | Materials | Information |
Shell | Elasticity Isotropic Material | mass_density: depending on each subdomain poisson_ratio: 0.3 young_modulus: 215 GPa |
Beam stiffener | Elasticity Isotropic Material | The properties are the same as the Shell subdomain that stiffener standing in |
Material is applied in Subdomain, users can select Subdomain(s) and view the material properties on the Properties Tree or Show Property tool to check the material parameters of the whole model.
To view any subdomain materials properties:
STEP 1: Change Selection Mode (top right of graphic window) to Subdomains → Click on a Subdomain on Graphic window
STEP 2: On the Property Tree (bottom left) → Expand the material → view properties
Figure 3. View Material parameters via Properties Tree
To view all component materials properties:
STEP 1: Change Selection Mode (top right of graphic window) to Subdomains → Expand the Property → Select Load more… → Wait a moment for the assets to be loaded in
Figure 4. Load More… to enable more fields
STEP 2: Expand the Property → Select a material property field → view the property of the whole model subdomains
Figure 5. Select a field to visualize
The selected property (mass_density) belongs to ElasticityMaterialBeam properties, so the visualization will be the mass_density of all the beams as below.
Figure 6. View mass_density of beams via Show properties tool
For shell subdomains, the mass_density belong to ElasticityMaterialShell as figure below:
Figure 7. mass_density of ElasticityMaterialShell
2.2. Boundary Conditions
In reality, the model is anchored with 3 mooring lines, each line is tied to one column of the structure. In the simulation environment, they are connected with three 6 DOFS spring connectors, then the constraints will be set at the rest points of the connectors.
To view 6 DoF spring connectors properties:
Change Selection Mode (right-top of graphic window) to Subdomains → Select a spring connector → View the properties on Property Tree (Left-bottom)
Figure 8. Spring connectors in model
The model is fixed at 3 nodes on 3 spring connectors as shown in figure below. Users can select a node and see the constraint type and its properties in the Properties Tree.
Figure 9. Three fixed locations of the model
Figure 10. The constraint type and properties
To view the Boundary Condition on Graphic window
The boundary condition visualizations for this case are black spheres. To enable the visualization:
Go to Configure view settings (eye icon) → on the Ports region, Tick on Boundary Conditions
Figure 11. Enable visualization of Boundary Conditions
2.3. Applying Loads
The solution verification has been done as a part of the project. To achieve this, all the loads from reality have been brought into the simulation environment. Within the OrcaFlex & OrcaWave calculation, the final loads are all applied in the Akselos DT model.
Akselos FOWT simulation model is built for the floater foundation only. External loads are applied to the floater structures based on the outputs of the coupled model analyses from OrcaFlex. The forces are computed in the time domain. An RB-FEA simulation (static analysis) is performed at each step of the time series.
The following outputs are extracted from the coupled model and used as inputs to the structural analysis for each load case:
- Time series of the six (6) DoF foundation positions, velocity, and acceleration.
- Time series of the mooring tension loads.
- Time series of the tower base forces and moments.
- Wave components of the irregular wave: frequency, amplitude, phase, and wavelength.
- Wave headings.
- Current speed profile and direction.
Independ with the load cases, the following results are also extracted from OrcaWave and OrcaFlex:
- Drag and added mass coefficients of each member for both Morison elements of the floater type and 6D buoys from the OrcaFlex model.
- Mesh (pr panel geometry) used in OrcaWave for the potential flow model.
- Hydrodynamic pressure database, in the frequency domain, from OrcaWave (diffraction and radiation pressures)
Figure 12. Akselos’ floating offshore wind load transfer workflow
Figure 13. OrcaFlex to Akselos Data Transfer
Figure 14. OrcaWave to Akselos Data Transfer
In Akselos Modeler, the corresponding loads are listed as below:
- Structural self-weight: the structure is divided into subdomains and each of these subdomains is assigned a density value. The self-weight of each subdomain is considered in the computation of the mass matrix. This mass matrix shall be used when performing the OrcaFlex simulation.
Load Name | Akselos Load Type | DeepCwind | Input for load |
Gravity (Self-weight) | Materials Volume Load (m/s^2) |
|
The self-weight of the model is calculated by equation:
- Ballast weights: ballast weights are applied in the model either as scaled density or as point loads with the forces distributed to the surrounding shell elements. Ballast weights are also considered when computing the mass matrix.
- Hydrostatic loads: hydrostatic pressure (including static buoyancy and restoring forces) is computed on each element of the outer surface of the structure within Akselos, based on the position of the structure at each time step of the simulation, as extracted from the OrcaFlex outputs. The hydrostatic pressure on the main columns considers a constant water level throughout the simulation. The hydrostatic response caused by wave elevation is not applied, similarly to the approach used on vessel objects in OrcaFlex.
Load Name | Akselos Load Type | DeepCwind | Input for load |
Hydrostatic pressure | Floater Hydrostatic Load Pressure |
|
The hydrostatic pressure of the model is calculated by equation:
- Hydrodynamic loads from potential flow theory (diffraction and radiation): wave loads are computed spatially, based on the frequency domain hydrodynamic database for diffraction and radiation pressure, extracted from OrcaWave. These pressures are interpolated between the Orca Wave panel model and the FEA mesh. The data is stored in the Akselos model once, for a given geometry. The time domain pressure coefficients are then computed based on the time series of acceleration and velocity of the floater and the wave elevation. The methodology used to generate these coefficients is the same as the OrcaFlex approach, except that this is applied at a mesh element level instead of on a rigid body.
Load Name | Akselos Load Type | DeepCwind | Input for load |
Diffraction | Normal Load |
| |
Radiation | Normal Load |
|
- Mooring forces: Mooring tensions are applied as point loads on the Akselos structural model. All models have three mooring lines on three buoyant columns. Hence, the mooring loads are applied to the corresponding points on the structure.
Load Name | Akselos Load Type | DeepCwind | Input for load |
Mooring forces | Point Load |
|
In OrcaFlex, the mooring force at the fairlead is calculated by:
- Tower base loads: Similarly, to the mooring forces, the time series of the tower base forces are extracted from the OrcaFlex simulation outputs and applied as point loads at the top of the main column. The load is then distributed to the surrounding shell elements.
Load Name | Akselos Load Type | DeepCwind | Input for load |
Tower base loads | Point Load |
|
- Drag loads from Morison theory: The Morison drag load calculation is implemented within Akselos’ software. A “skeleton” of beam elements is applied on the model to compute Morison loads. These loads are then distributed to the shell elements by interpolating between the forces computed at the extremities of each element when it is applied to the main columns. The input parameters are the added mass and drag coefficients for each member of the structure (extracted from the OrcaFlex model) and the incident wave parameters.
Load Name | Akselos Load Type | DeepCwind | Input for load |
Drag loads | Wave Load |
|
The Morison‘s equation to calculate the wave loads on fixed vertical cylinders:
The inertia is affected by the hydrodynamic load it experiences.
- Acceleration loads: The inertial force is calculated based on the floater accelerations, computed in OrcaFlex, and spatially distributed on the floater. Similar to the weight force, the mass used depends on each subdomain of the model. These acceleration loads must be equal to the sum of the forces applied to the OrcaFlex model.
Load Name | Akselos Load Type | DeepCwind | Input for load |
Acceleration loads | Material Volume Load
Material Rotary Acceleration |
|
To apply those Loads in Akselos Modeler, there are few more steps need to be done first:
- Create Stored Selections (define group of entities that is under the same load)
- NPZ Bundle (read .npz file from OrcaFlex)
- Model variables (manage properties that used for applying loads and fatigue analysis setting up)
Figure 15. Input for Loads
2.3.1. Stored Selections
Stored Selections, as their name implies, are selections of entities that can be stored in the AKS file, identified by name that can be defined by the user. Users can explore and modify Stored Selections which are located on the Object Tree.
There are four types of Stored Selections that can be made:
Figure 16. Four Stored Selection types
- Component selections: Allow storage of one or multiple complete components.
- Subdomains selections: Allow storage of one or multiple subdomains that belong to one or multiple components.
- Boundary Sets selections: Allow storage of one or multiple surfaces, nodes, edges, which can be applied boundary conditions or loads, they can belong to one or multiple components.
- Element Sets selections: Allow age of one or multiple elements that belong to one or multiple components.
In the DeepCwind model, there are three types of Stored Selection that are used as listed below. The visualization of Stored Selections is yellow highlighted whenever users click on them.
To view object(s) in a Stored Selection:
On Structure Tree → Expand the Model → Expand the Stored Selections → Select a Stored Selection and View the visualization on Graphic Window.
Figure 17. Stored Selections of DeepCwind 5 MW model
- Boundary Sets Selection:
- Mooring_1: a node in component 5 MW_BC2_Bottom that will be used to apply Point Load, which represent for mooring force
- Mooring_2: a node in component 5 MW_BC1_Bottom that will be used to apply Point Load, which represent for mooring force
- Mooring_3: a node in component 5 MW_BC3_Bottom that will be used to apply Point Load, which represent for mooring force
Figure 18. Stored Selection of Mooring
- Tower: a node in component 5 MW_MC_Top that will be used to apply Point Load, which represents a force in the tower
Figure 19. Stored Selection of Tower
- Hydrostatic: 24 surfaces that will be applied Hydrostatic Load
Figure 20. Stored Selection of Hydrostatic
- Wetted_panels: 14 surfaces that will be applied Diffraction Load and Radiation Load
Figure 21. Stored Selection of Wetted_panels
- Morison: 134 surfaces that will be applied Wave Load
Figure 22. Stored Selection of Morison
- Subdomains Selection:
- Self_weight: 137 subdomains that will be applied Self Weight Load and Acceleration Load
Figure 23. Stored Selection of Self_weight
- Components Selection:
- Fatigue Components: components that will be used to calculate fatigue damage
Figure 24. Stored Selection of Fatigue Components
- FEA_component: beam super element components (spring 6 DoFs connectors) used for Hybrid solve
Figure 25. Stored Selection of FEA Components
2.3.2. NPZ Bundle
NPZ Bundle is a tool that allows users to read npz files. In the DeepCWind model, most loads come from npz files which are more convenient to store values in instead of storing directly in aks file or in components.
There are 2 types of properties in npz file:
- npz_coeffs: coefficients without depending on time steps
- npz_time_series: coefficients that depend on the time steps
To view the NPZ Bundle:
On Model Tree → Expand the NPZ Bundle
Figure 26. NPZ Bundle is located on the Model Tree
Select npz_coeffs or npz_time_series → On Property Tree (left bottom) → Click on a property in files → See the values/properties on the Table & Chart
Figure 27. npz_time_series properties
For npz_time_series which properties depend on time steps, the filter allows users to select 3 types of time steps:
- NpzBundleMacro.Slide: Select the steps from start_index to end_index with a stride
- NpzBundleMacro.ExcludeSome: Select all time steps except those in the list
- NpzBundleMacro.IncludeOnly: Select only specific time steps in the list
2.3.3. Model Variables
Located in Model tab → Model, Model Variables is a place that stores properties as variables of the model. These variables are then used when setting up load properties or fatigue analysis. Users have a place to store and manage all the variables of the model. Moreover, setting values for loads and analysis will be more convenient, instead of calling directly from npz files.
All variables in Model
Variable/ Variable group | Load Case/Load or Analysis |
Current_data | Morison (Wave Load) |
Environment | Morison (Wave Load) |
Floater_motion | Hydrostatic (Floater Hydrostatic Pressure) |
Global_acceleration | Acceleration (Material Volume Load & Material Rotary Acceleration) Morison (Wave Load) |
Global_velocity | Morison (Wave Load) |
Local_gravity | Full_model_self_weight (Material Volume Load) |
Mooring_1 | Mooring force (Point Load) |
Mooring_2 | Mooring force (Point Load) |
Mooring_3 | Mooring force (Point Load) |
Tower | Tower (Point Load) |
Wave_component | Morison (Wave Load) |
deterministic_fatigue_properties | Fatigue analysis |
fatigue_properties | Fatigue analysis |
heading_index | Set index of heading |