Monopile Design#
For detailed methodology, please see the Monopile Design methodology documentation.
- class ORBIT.phases.design.MonopileDesign(config, **kwargs)[source]#
Monopile Design Class.
- expected_config = {'monopile_design': {'air_density': 'kg/m3 (optional)', 'load_factor': 'float (optional)', 'material_factor': 'float (optional)', 'monopile_density': 'kg/m3 (optional)', 'monopile_modulus': 'Pa (optional)', 'monopile_steel_cost': 'USD/t (optional)', 'monopile_tp_connection_thickness': 'm (optional)', 'soil_coefficient': 'N/m3 (optional)', 'tp_steel_cost': 'USD/t (optional)', 'transition_piece_density': 'kg/m3 (optional)', 'transition_piece_length': 'm (optional)', 'transition_piece_thickness': 'm (optional)', 'turb_length_scale': 'm (optional)', 'weibull_scale_factor': 'float (optional)', 'weibull_shape_factor': 'float (optional)', 'yield_stress': 'Pa (optional)'}, 'plant': {'num_turbines': 'int'}, 'site': {'depth': 'm', 'mean_windspeed': 'm/s'}, 'turbine': {'hub_height': 'm', 'rated_windspeed': 'm/s', 'rotor_diameter': 'm'}}#
- output_config = {'monopile': {'deck_space': 'm2', 'diameter': 'm', 'embedment_length': 'm', 'length': 'm', 'mass': 't', 'moment': 'm4', 'thickness': 'm', 'unit_cost': 'USD'}, 'transition_piece': {'deck_space': 'm2', 'length': 'm', 'mass': 't', 'unit_cost': 'USD'}}#
- run()[source]#
Main run function. Passes required config parameters to
design_monopile().
- design_monopile(mean_windspeed, site_depth, rotor_diameter, hub_height, rated_windspeed, **kwargs)[source]#
Solves system of equations for the required pile diameter to satisfy the 50 year extreme operating gust moment. Using the result from the diameter equation, calculates the wall thickness and the required embedment length and other important sizing parameters [1]_.
- Parameters:
mean_windspeed (int | float) -- Mean wind speed at site (m/s).
site_depth (int | float) -- Water depth at site (m).
rotor_diameter (int | float) -- Rotor diameter (m).
hub_height (int | float) -- Hub height above mean sea level (m).
rated_windspeed (int | float) -- Rated windspeed of turbine (m/s).
- Returns:
monopile (dict) -- Dictionary of monopile sizing and costs.
diameter- Pile diameter (m)thickness- Pile wall thickness (m)moment- Pile bending moment of inertia (m4)embedment_length- Pile embedment length (m)length- Total pile length (m)mass- Pile mass (t)type- 'Monopile'
References
- design_transition_piece(D_p, t_p, **kwargs)[source]#
Designs transition piece given the results of the monopile design.
Based on Arany 2016, sections 2.2.7 - 2.2.8.
- Parameters:
monopile_diameter (int | float) -- Diameter of the designed monopile.
- Returns:
tp_design (dict) -- Transition piece design parameters.
- property design_result#
Returns the results of
design_monopile().
- property total_cost#
Returns total cost of the substructures and transition pieces.
- property detailed_output#
Returns detailed phase information.
- property material_cost#
Returns the material cost of the monopile and transition piece.
- property total_monopile_mass#
Returns total mass of all monopiles.
- property total_tp_mass#
Returns total mass of all transition pieces.
- property monopile_steel_cost#
Returns the cost of monopile steel (USD/t) fully fabricated.
- property tp_steel_cost#
Returns the cost of fabricated transition piece steel (USD/t).
- static pile_mass(Dp, tp, Lt, **kwargs)[source]#
Calculates the total monopile mass in tonnes.
- Parameters:
Dp (int | float) -- Pile diameter (m).
tp (int | float) -- Pile wall thickness (m).
Lt (int | float) -- Total pile length (m).
- Returns:
mt (float) -- Total pile mass (t).
- static pile_embedment_length(Ip, **kwargs)[source]#
Calculates required pile embedment length.
Source: Arany & Bhattacharya (2016) - Equation 7 (Enforces a rigid/lower aspect ratio monopile)
- Parameters:
Ip (int | float) -- Pile moment of inertia (m4)
- Returns:
Lp (float) -- Required pile embedment length (m).
- static pile_thickness(Dp)[source]#
Calculates pile wall thickness.
Source: Arany & Bhattacharya (2016) - Equation 1
- Parameters:
Dp (int | float) -- Pile diameter (m).
- Returns:
tp (float) -- Pile Wall Thickness (m)
- static pile_moment(Dp, tp)[source]#
Equation to calculate the pile bending moment of inertia.
- Parameters:
Dp (int | float) -- Pile diameter (m).
tp (int | float) -- Pile wall thickness (m).
- Returns:
Ip (float) -- Pile bending moment of inertia
- static pile_diam_equation(Dp, *data)[source]#
Equation to be solved for Pile Diameter.
Combination of equations 99 & 101 in this paper: Source: Arany & Bhattacharya (2016) - Equations 99 & 101
- Parameters:
Dp (int | float) -- Pile diameter (m).
- Returns:
res (float) -- Reduced equation result.
- calculate_50year_wind_moment(mean_windspeed, site_depth, rotor_diameter, hub_height, rated_windspeed, **kwargs)[source]#
Calculates the 50 year extreme wind moment using methodology from DNV-GL.
Source: Arany & Bhattacharya (2016) - Equation 30
- Parameters:
mean_windspeed (int | float) -- Mean wind speed at site (m/s).
site_depth (int | float) -- Water depth at site (m).
rotor_diameter (int | float) -- Rotor diameter (m).
hub_height (int | float) -- Hub height above mean sea level (m).
rated_windspeed (int | float) -- Rated windspeed of turbine (m/s).
load_factor (float) -- Added safety factor on the extreme wind moment. Default: 1.3 (approximately matches DNV standard)
- Returns:
M_50y (float) -- 50 year extreme wind moment (N-m).
- calculate_50year_wind_load(mean_windspeed, rotor_diameter, rated_windspeed, **kwargs)[source]#
Calculates the 50 year extreme wind load using methodology from DNV-GL.
Source: Arany & Bhattacharya (2016) - Equation 29
- Parameters:
mean_windspeed (int | float) -- Mean wind speed at site (m/s).
rotor_diam (int | float) -- Rotor diameter (m).
rated_windspeed (int | float) -- Rated windspeed of turbine (m/s).
- Returns:
F_50y (float) -- 50 year extreme wind load (N).
- static calculate_thrust_coefficient(rated_windspeed)[source]#
Calculates the thrust coefficient using rated windspeed.
Source: Frohboese & Schmuck (2010)
- Parameters:
rated_windspeed (int | float) -- Rated windspeed of turbine (m/s).
- Returns:
ct (float) -- Coefficient of thrust.
- static calculate_50year_extreme_ws(mean_windspeed, **kwargs)[source]#
Calculates the 50 year extreme wind speed using methodology from DNV-GL.
Source: Arany & Bhattacharya (2016) - Equation 27
- Parameters:
mean_windspeed (int | float) -- Mean wind speed (m/s).
shape_factor (int | float) -- Shape factor of the Weibull distribution.
- Returns:
U_50y (float) -- 50 year extreme wind speed (m/s).
- calculate_50year_extreme_gust(mean_windspeed, rotor_diameter, rated_windspeed, **kwargs)[source]#
Calculates the 50 year extreme wind gust using methodology from DNV-GL.
Source: Arany & Bhattacharya (2016) - Equation 28
- Parameters:
mean_windspeed (int | float) -- Mean wind speed at site (m/s).
rotor_diameter (int | float) -- Rotor diameter (m).
rated_windspeed (int | float) -- Rated windspeed of turbine (m/s).
turb_length_scale (int | float) -- Turbulence integral length scale (m).
- Returns:
U_eog (float) -- Extreme operating gust speed (m/s).
- _abc_impl = <_abc._abc_data object>#