NLR Land-Based 2015 Model#
- class csm.models.nlr2015.Land2015NLR(turbine_class=None, rated_power_kw=None, rotor_diameter=None, num_bearings=None, num_blades=3, blade_has_carbon=None, blade_mass=None, blade_cost=None, hub_mass=None, hub_cost=None, max_tip_speed=None, rated_rpm=None, rotor_torque=None, pitch_system_mass=None, pitch_system_cost=None, spinner_mass=None, spinner_cost=None, low_speed_shaft_mass=None, low_speed_shaft_cost=None, bearing_mass=None, bearing_cost=None, gearbox_mass=None, gearbox_cost=None, brake_mass=None, brake_cost=None, high_speed_shaft_mass=None, high_speed_shaft_cost=None, generator_mass=None, generator_cost=None, bedplate_mass=None, bedplate_cost=None, yaw_system_mass=None, yaw_system_cost=None, hydraulic_cooling_mass=None, hydraulic_cooling_cost=None, nacelle_cover_mass=None, nacelle_cover_cost=None, platform_mainframe_mass=None, platform_mainframe_cost=None, transformer_mass=None, transformer_cost=None, controls_cost=None, electrical_connection_mass=None, electrical_connection_cost=None, converter_cost=None, tower_length=None, tower_mass=None, tower_cost=None, nacelle_mass=None, nacelle_cost=None, hub_system_mass=None, hub_system_cost=None, rotor_mass=None, rotor_cost=None, turbine_mass=None, turbine_cost=None, turbine_cost_kw=None, blade_transport_cost=None, hub_transport_cost=None, power_electronics_transport_cost=None, drivetrain_transport_cost=None, tower_section_mass_max=80000, num_tower_sections=None, tower_transport_cost=None, parts_transport_cost=None, transport_cost=None, turbine_production_cost=1000.0, tower_flange_material_cost=1000.0, tower_flange_production_cost=1000.0, efficiency_max=1.0, blade_mass_coeff=0.5, blade_mass_cost_coeff=14.6, hub_mass_coeff=2.3, hub_mass_intercept=1320.0, hub_mass_cost_coeff=3.9, pitch_bearing_mass_coeff=0.1295, pitch_bearing_mass_intercept=491.31, bearing_housing_fraction=0.328, mass_sys_offset=555.0, pitch_system_mass_cost_coeff=22.1, spinner_mass_coeff=15.5, spinner_mass_intercept=-980.0, spinner_mass_cost_coeff=11.1, lss_mass_coeff=13.0, lss_mass_exp=0.65, lss_mass_intercept=775.0, lss_mass_cost_coeff=11.9, bearing_mass_coeff=0.0001, bearing_mass_exp=3.5, bearing_mass_cost_coeff=4.5, gearbox_torque_density=200, gearbox_torque_cost=50, brake_mass_coeff=0.00122, brake_mass_cost_coeff=3.6254, hss_mass_coeff=0.19894, hss_mass_cost_coeff=6.8, generator_mass_coeff=2.3, generator_mass_intercept=3400, generator_mass_cost_coeff=12.4, bedplate_mass_exp=2.2, bedplate_mass_cost_coeff=2.9, yaw_system_non_bearing_mass_coeff=1.5, yaw_system_mass_coeff=0.0009, yaw_system_mass_exp=3.314, yaw_system_mass_cost_coeff=8.3, hvac_mass_coeff=0.08, hvac_mass_cost_coeff=124, nacelle_cover_mass_coeff=1.2817, nacelle_cover_mass_intercept=428.19, nacelle_cover_mass_cost_coeff=5.7, platform_mainframe_mass_coeff=0.125, has_crane=False, crane_mass=3000, platform_mainframe_mass_cost_coeff=17.1, crane_cost=12000.0, controls_cost_coeff=21.15, controls_mass=0, converter_mass_cost_coeff=18.8, converter_mass=0, electrical_connection_cost_coeff=41.85, transformer_mass_coeff=1.915, transformer_mass_intercept=1910.0, transformer_mass_cost_coeff=18.8, tower_mass_coeff=19.828, tower_mass_exp=2.0282, tower_mass_cost_coeff=2.9)#
Replication of the original Excel-based CSM model created in 2006 and modified in 2015 with updates for land-based turbines in 2015. Scaling factor updates from 2020 and 2024 made in the WISDEM implementation have been carried over for consistency. For complete details on all arguments, attributes, and methods please see the
csm.models.base_model.CSMBasedocumentation. All listed attributes below describe the models defaults and any relevant contextual information.Original (2006) model defaults:
pitch_bearing_mass_coeffpitch_bearing_mass_interceptbearing_housing_fractionmass_sys_offsetpitch_system_mass_cost_coeffyaw_mass_coeffyaw_mass_exphvac_mass_coeffhvac_mass_coeffhvac_mass_cost_coeffnacelle_cover_mass_coeffnacelle_cover_mass_interceptnacelle_cover_mass_cost_coeffelectrical_connection_cost_coeffcontrols_cost_coeffplatform_mainframe_mass_coeffplatform_mainframe_mass_cost_coeffcrane_masscrane_cost
2020 & 2024 model updates:
brake_mass_cost_coeff(2020)gearbox_torque_density(2024)
- Parameters:
num_blades (int, optional) -- Number of turbine blades. Defaults to 3.
rated_power_kw (float) -- Turbine rated power (\(kW\)).
rotor_diameter (float) -- Diameter of the swept area of the turbine blades (\(m\)).
turbine_class (int) -- Turbine classification; use 1 for IEC Wind-Class I, 2 for IEC Wind-Class II or III.
num_bearings (int) -- Number of main bearings.
max_tip_speed (float) -- Maximum allowable blade tip speed (\(m/s\)).
tower_length (float) -- For onshore turbines, this is the hub height (total length above ground). For offshore turbines, this is length from transition piece to hub height (\(m\)).
blade_has_carbon (bool) -- Use True if the blade has carbon, False if not.
blade_mass_coeff (float) -- \(k\) in the blade mass equation from
calculate_blade_mass(). Defaults to 0.5.blade_mass_cost_coeff (float) -- Blade cost per kilogram (\(USD/kg\)). Defaults to 14.6.
blade_mass (float) -- Blade mass (\(kg\)). If not provided, calculated in
calculate_blade_mass().blade_cost (float) -- Blade cost (\(USD\)). If not provided, calculated in
calculate_blade_cost().hub_mass_coeff (float) -- \(k\) in the hub mass equation from
calculate_hub_mass(). Defaults to 2.3.hub_mass_intercept (bool) -- \(b\) in the hub mass equation from
calculate_hub_mass(). Defaults to .hub_mass_cost_coeff (float) -- Hub cost per kilogram (\(USD/kg\)) from
calculate_hub_cost(). Defaults to .hub_mass (float) -- Hub mass (\(kg\)). If not provided, calculated in
calculate_hub_mass().hub_cost (float) -- Hub cost (\(USD\)). If not provided, calculated in
calculate_hub_cost().pitch_bearing_mass_coeff (float) -- \(k\) in the pitch bearing mass equation from
calculate_pitch_system_mass(). Defaults to 0.1295.pitch_bearing_mass_intercept (float) -- \(b1\) in the pitch bearing mass equation from
calculate_pitch_system_mass(). Defaults to 491.31.bearing_housing_fraction (float) -- Mass of the housing for the bearing as a fraction of the bearing mass. \(h\) in the pitch system mass equation from
calculate_pitch_system_mass(). Defaults to 0.3280.mass_sys_offset (float) -- \(b2\) in the pitch system mass equation from
calculate_pitch_system_mass(). Defaults to 555.pitch_system_mass_cost_coeff (float) -- Pitch system cost per kilogram (\(USD/kg\)) from
calculate_pitch_system_cost(). Not updated in 2015, so is the original $22.1 \(USD/kg\) Defaults to 22.1.pitch_system_mass (float) -- Pitch system mass (\(kg\)). If not provided, calculated in
calculate_pitch_system_mass().pitch_system_cost (float) -- Pitch system cost (\(USD\)). If not provided, calculated in
calculate_pitch_system_cost().spinner_mass_coeff (float) -- \(k\) in the mass equation above from
calculate_spinner_mass(). Defaults to 15.5.spinner_mass_intercept (bool) -- \(b\) in the mass equation above from
calculate_spinner_mass(). Defaults to -980.0.spinner_mass_cost_coeff (float) -- Spinner cost per kilogram (\(USD/kg\)) from
calculate_spinner_cost(). Defaults to 11.1.spinner_mass (float) -- Spinner mass (\(kg\)). If not provided, calculated in
calculate_spinner_mass().spinner_cost (float) -- Spinner cost (\(USD\)). If not provided, calculated in
calculate_spinner_cost().lss_mass_coeff (float) -- \(k\) in the low speed shaft mass equation from
calculate_low_speed_shaft_mass(). Defaults to 13.0.lss_mass_exp (float) -- \(b1\) in the low speed shaft mass equation from
calculate_low_speed_shaft_mass(). Defaults to 0.65.lss_mass_intercept (float) -- \(b2\) in the low speed shaft mass equation from
calculate_low_speed_shaft_mass(). Defaults to 775.lss_mass_cost_coeff (float) -- Low speed shaft cost per kilogram (\(USD/kg\)). Defaults to 11.9.
low_speed_shaft_mass (float) -- Low speed shaft mass (\(kg\)). If not provided, calculated in
calculate_low_speed_shaft_mass().low_speed_shaft_cost (float) -- Low speed shaft cost (\(USD\)). If not provided, calculated in
calculate_low_speed_shaft_cost().bearing_mass_coeff (float) -- \(k\) in the bearing mass equation from
calculate_bearing_mass(). Defaults to 0.0001.bearing_mass_exp (bool) -- \(b\) in the bearing mass equation from
calculate_bearing_mass(). Defaults to 3.5.bearing_mass_cost_coeff (float) -- Main bearing cost per kilogram (\(USD/kg\)). Defaults to 4.5.
bearing_mass (float) -- Main bearing mass (\(kg\)). If not provided, calculated in
calculate_bearing_mass().bearing_cost (float) -- Main bearing cost (\(USD\)). If not provided, calculated in
calculate_bearing_cost().efficiency_max (float) -- Maximum possible drivetrain efficiency. Defaults to 1.0.
gearbox_torque_density (float) -- Gearbox torque per kilogram of mass from
calculate_gearbox_mass()andcalculate_gearbox_cost()(\(N*m/kg\)). Defaults to 200.gearbox_torque_cost (float) -- Gearbox cost per unit of torque (\(USD/kN/m\)) from
calculate_gearbox_cost(). Defaults to 50.rated_rpm (float) -- Rated RPM of the turbine based on the
max_tip_speedandrotor_diameter. If not provided, calculated incalculate_rotor_torque().rotor_torque (float) -- Maximum torque produced under normal operations of the turbine (kNm). If not provided, calculated in
calculate_rotor_torque().gearbox_mass (float) -- Gearbox mass (\(kg\)). If not provided, calculated in
calculate_gearbox_mass().gearbox_cost (float) -- Gearbox cost (\(USD\)). If not provided, calculated in
calculate_gearbox_cost().brake_mass_coeff (bool) -- \(k\) in the brake mass equation from
calculate_brake_mass(). Defaults to 0.00122.brake_mass_cost_coeff (float) -- Brake cost per kilogram (\(USD/kg\)). Defaults to 3.6254.
brake_mass (float) -- Brake mass (\(kg\)). If not provided, calculated in
calculate_brake_mass().brake_cost (float) -- Brake cost (\(USD\)). If not provided, calculated in
calculate_brake_cost().hss_mass_coeff (float) -- Mass scaling coefficient, \(k\) in the mass equation. Defaults to 0.19894.
hss_mass_cost_coeff (float) -- High speed shaft cost, per kilogram of mass, \(k\) in the equation above (\(USD/kg\)). Defaults to 6.8.
high_speed_shaft_mass (float) -- High speed shaft mass (\(kg\)). If not provided, calculated in
calculate_high_speed_shaft_mass().high_speed_shaft_cost (float) -- High speed shaft cost (\(USD\)). If not provided, calculated in
calculate_high_speed_shaft_cost().generator_mass_coeff (float) -- \(k\) in the generator mass equation above (\(kg/kW\)) from
calculate_generator_mass(). Defaults to 2.3.generator_mass_intercept (bool) -- \(b\) in the generator mass equation above (\(kg\)) from
calculate_generator_mass(). Defaults to 3400.generator_mass_cost_coeff (float) -- generator cost per kilogram (\(USD/kg\)). Defaults to 12.4.
generator_mass (float) -- Generator mass (\(kg\)). If not provided, calculated in
calculate_generator_mass().generator_cost (float) -- Generator cost (\(USD\)). If not provided, calculated in
calculate_generator_cost().bedplate_mass_exp (bool) -- \(b\) in the mass equation from
calculate_bedplate_mass(). Defaults to 2.2.bedplate_mass_cost_coeff (float) -- bedplate cost per kilogram (\(USD/kg\)). Defaults to 2.9.
bedplate_mass (float) -- Bedplate mass (\(kg\)). If not provided, calculated in
calculate_bedplate_mass().bedplate_cost (float) -- Bedplate cost (\(USD\)). If not provided, calculated in
calculate_bedplate_cost().yaw_system_non_bearing_mass_coeff (float) -- \(k1\) in the mass equation from
calculate_yaw_system_mass()to account for non-bearing mass. Defaults to 1.5.yaw_system_mass_coeff (float) -- \(k2\) in the mass equation from
calculate_yaw_system_mass(). Defaults to 0.0009.yaw_system_mass_exp (bool) -- \(b\) in the mass equation from
calculate_yaw_system_mass(). Defaults to 3.314.yaw_system_mass_cost_coeff (float) -- Yaw system cost per kilogram (\(USD/kg\)). Defaults to 8.3.
yaw_system_mass (float) -- Yaw system mass (\(kg\)). If not provided, calculated in
calculate_yaw_system_mass().yaw_system_cost (float) -- Yaw system cost (\(USD\)). If not provided, calculated in
calculate_yaw_system_cost().hvac_mass_coeff (float) -- Mass scaling coefficient. Defaults to 0.08.
hvac_mass_cost_coeff (float) -- Hydraulic cooling cost, per kilogram of mass. Defaults to 124.
hydraulic_cooling_mass (float) -- Hydraulic cooling mass (\(kg\)). If not provided, calculated in
calculate_hydraulic_cooling_mass().hydraulic_cooling_cost (float) -- Hydraulic cooling cost (\(USD\)). If not provided, calculated in
calculate_hydraulic_cooling_cost().nacelle_cover_mass_coeff (float) -- \(k\) in the mass equation from
calculate_nacelle_cover_mass(). Defaults to 1.2817.nacelle_cover_mass_intercept (bool) -- \(b\) in the mass equation from
calculate_nacelle_cover_mass(). Defaults to 428.19.nacelle_cover_mass_cost_coeff (float) -- Nacelle cover cost per kilogram (\(USD/kg\)). Defaults to 5.7.
nacelle_cover_mass (float) -- nacelle_cover mass (\(kg\)). If not provided, calculated in
calculate_nacelle_cover_mass().nacelle_cover_cost (float) -- nacelle_cover mass (\(USD\)). If not provided, calculated in
calculate_nacelle_cover_cost().platform_mainframe_mass_coeff (float) -- \(k\) from
calculate_platform_mainframe_mass(). Defaults to 0.125.has_crane (bool) -- If True, apply
crane_masstocalculate_platform_mainframe_mass()andcrane_costtocalculate_platform_mainframe_cost(), otherwise ignore. Defaults to False.crane_mass (bool) -- Mass of onboard crane, if
has_crane, \(m_{crane}\) fromcalculate_platform_mainframe_mass(). Defaults to 3000.crane_cost (bool) -- Cost of onboard crane, if
has_crane, \(b\) in the mass equation above. Defaults to 12000.platform_mainframe_mass_cost_coeff (float) -- Platform mainframe cost per kilogram (\(USD/kg\)). Defaults to 17.1.
platform_mainframe_mass (float) -- Platform mainframe mass (\(kg\)). If not provided, calculated in
calculate_platform_mainframe_mass().platform_mainframe_cost (float) -- Platform mainframe cost (\(USD\)). If not provided, calculated in
calculate_platform_mainframe_cost().controls_mass (float) -- Controls mass (\(kg\)). If not provided, calculated in
calculate_controls_mass().controls_cost_coeff (float) -- Controls cost per kilowatt of capacity (\(USD/kW\)). Defaults to 21.15.
controls_cost (float) -- Controls cost (\(USD\)). If not provided, calculated in
calculate_controls_cost().electrical_connection_mass (float) -- Electrical connection mass (\(kg\)). If not provided, calculated in
calculate_electrical_connection_mass().electrical_connection_cost_coeff (float) -- Electrical connection cost per kilowatt (\(USD/kW\)). Defaults to 41.85.
electrical_connection_cost (float) -- Electrical connection cost (\(USD\)). If not provided, calculated in
calculate_electrical_connection_cost().converter_mass (float) -- Power converter mass (\(kg\)). If not provided, calculated in
calculate_converter_mass().converter_mass_cost_coeff (float) -- Power converter cost per kilogram (\(USD/kg\)). If not provided, calculated in
calculate_converter_cost().converter_cost (float) -- Power converter cost (\(USD\)). If not provided, calculated in
calculate_converter_cost().transformer_mass_coeff (float) -- \(k\) in the mass equation from
calculate_transformer_mass(). Defaults to 1.915.transformer_mass_intercept (bool) -- \(b\) in the mass equation from
calculate_transformer_mass(). Defaults to 1910.transformer_mass_cost_coeff (float) -- Transformer cost per kilogram (\(USD/kg\)). Defaults to 18.8.
transformer_mass (float) -- Transformer cover mass (\(kg\)). If not provided, calculated in
calculate_transformer_mass().transformer_cost (float) -- Transformer cover cost (\(USD\)). If not provided, calculated in
calculate_transformer_cost().tower_mass_coeff (float) -- \(k\) in the mass from
calculate_tower_mass()(\(kg/m\)). Defaults to 19.828.tower_mass_exp (bool) -- \(b\) in the mass equation from
calculate_tower_mass(). Defaults to .tower_mass_cost_coeff (float) -- Tower cover cost per kilogram (\(USD/kg\)). Defaults to 2.9.
tower_mass (float) -- Tower mass (\(kg\)). If not provided, calculated in
calculate_tower_mass().tower_cost (float) -- Tower cost (\(USD\)). If not provided, calculated in
calculate_tower_cost().nacelle_mass (float) -- Total nacelle mass (\(kg\)). If not provided, calculated in
calculate_nacelle_mass().nacelle_cost (float) -- Total nacelle cost (US). If not provided, calculated in
calculate_nacelle_cost().hub_system_mass (float) -- Total hub system mass (\(kg\)). If not provided, calculated in
calculate_hub_system_mass().hub_system_cost (float) -- Total hub system cost (\(USD\)). If not provided, calculated in
calculate_hub_system_cost().rotor_mass (float) -- Total rotor mass (\(kg\)). If not provided, calculated in
calculate_rotor_mass().rotor_cost (float) -- Total rotor cost (\(USD\)). If not provided, calculated in
calculate_rotor_cost().turbine_mass (float) -- Total turbine mass (\(kg\)). If not provided, calculated in
calculate_turbine_mass().turbine_cost (float) -- Total turbine cost (\(USD\)). If not provided, calculated in
calculate_turbine_cost().turbine_cost -- Total turbine cost, normalized by
rated_power_kw(\(USD/kW\)).turbine_cost_kw (float)
blade_transport_cost (float)
hub_transport_cost (float)
power_electronics_transport_cost (float)
drivetrain_transport_cost (float)
tower_section_mass_max (Any | None)
num_tower_sections (float)
tower_transport_cost (float)
parts_transport_cost (float)
transport_cost (float)
turbine_production_cost (float)
tower_flange_material_cost (float)
tower_flange_production_cost (float)
Primary API#
Main interface of the model for end users creating and running a model, and getting results.
Method |
Description |
|---|---|
|
Create a complete or incomplete model from a configuration data dictionary. |
|
Calculate individual or a series of outputs. |
|
Calculate all outputs. |
|
Parameter sweep. |
|
Parameter sweep with only partial calculation of results for incomplete model definitions. |
|
Retrieve a dictionary of calculated attributes. |
Retrieve a dictionary of all calculated attributes. |
|
Retrieve a dictionary of calculated mass attributes. |
|
Retrieve a dictionary of calculated cost attributes. |
|
Retrieve a dictionary of calculated transport cost attributes. |
|
Create a component-indexed data frame of mass and cost values. |
|
|
Calculate the base cost breakdown of the US IRS manufactured product component tables. |
|
Calculates the total, valid domestic content production percentage |
|
Update model values based on a data dictionary and reset any calculated values dependent on the attributes. |
|
Reset attribute(s) back to their model default. |
Model Helpers#
The following properties and methods are made available for either convenience or performing underlying checks on the data.
Attributes/Methods |
Description |
|---|---|
Turbine nameplate capacity, in :math: |
|
Half of the rotor diameter. |
|
Rotor swept area. |
|
The names of all attributes available as outputs. |
|
|
Names of all attributes dependent on |
Names of all attributes |
|
|
Mapping of all the inputs and outputs of the model. |
Tuple of |
|
Dictionary of |
|
|
Checks for the existence of a non-None value. |
|
Validates the required attributes for a component's calculation and runs any uncalculated dependent calculations. |
Verifies the attribute isn't already calculated and validates its dependencies. |
Subsystem Calculations#
The following is a breakdown of all the individual subsystem calculations available. All subsystem
values use:math:kg for mass and :math:USD for cost. Any other values will have units listed.
System |
Method |
Description |
|---|---|---|
Rotor |
Calculate mass of a single blade. |
|
Rotor |
Calculate cost of a single blade. |
|
Hub System |
Calculate mass of the hub. |
|
Hub System |
Calculate cost of the hub. |
|
Hub System |
Calculate mass of the pitch system. |
|
Hub System |
Calculate cost of the pitch system. |
|
Hub System |
Calculate mass of the spinner (nose cone). |
|
Hub System |
Calculate cost of the spinner (nose cone). |
|
Nacelle |
Calculate mass of the low speed shaft. |
|
Nacelle |
Calculate cost of the low speed shaft. |
|
Nacelle |
Calculate mass of a single main bearing. |
|
Nacelle |
Calculate cost of a single main bearing. |
|
Nacelle |
Calculate the rotor_torque (:math: |
|
Nacelle |
Calculate mass of the gearbox. |
|
Nacelle |
Calculate cost of the gearbox. |
|
Nacelle |
Calculate mass of the brakes. |
|
Nacelle |
Calculate cost of the brakes. |
|
Nacelle |
Calculate mass of the high speed shaft. |
|
Nacelle |
Calculate cost of the high speed shaft. |
|
Nacelle |
Calculate mass of the generator. |
|
Nacelle |
Calculate cost of the generator. |
|
Nacelle |
Calculate mass of the bedplate. |
|
Nacelle |
Calculate cost of the bedplate. |
|
Nacelle |
Calculate mass of the yaw system. |
|
Nacelle |
Calculate cost of the yaw system. |
|
Nacelle |
Calculate mass of the HVAC system. |
|
Nacelle |
Calculate cost of the HVAC system. |
|
Nacelle |
Calculate mass of the nacelle cover. |
|
Nacelle |
Calculate cost of the nacelle cover. |
|
Nacelle |
Calculate mass of the platform railing. |
|
Nacelle |
Calculate cost of the platform railing. |
|
Nacelle |
Calculate mass of the transformer. |
|
Nacelle |
Calculate cost of the transformer. |
|
Nacelle |
Calculate mass of the controls system. |
|
Nacelle |
Calculate cost of the controls system. |
|
Nacelle |
Calculate mass of the electrical connections. |
|
Nacelle |
Calculate cost of the electrical connections. |
|
Nacelle |
Calculate mass of the power converter system. |
|
Nacelle |
Calculate cost of the power converter system. |
|
Tower |
Calculate mass of the tower. |
|
Tower |
Calculate cost of the tower. |
|
Transport |
Calculate the total blade transport cost. |
|
Transport |
Calculate the hub transport cost. |
|
Transport |
Calculate the power electronics transport cost. |
|
Transport |
Calculate the drivetrain transport cost. |
|
Transport |
Calculate the number of tower sections. |
|
Transport |
Calculate the tower transport cost. |
|
Transport |
Calculate the total transport cost. |
Subsystem Aggregations (Systems)#
Method |
Description |
|---|---|
Calculate mass of all subsystems listed above. |
|
Calculate cost of all subsystems |
|
listed above. |
|
Calculate mass of the nacelle. |
|
Calculate cost of the nacelle. |
|
Calculate mass of hub system. |
|
Calculate cost of hub system. |
|
Calculate mass of the rotor. |
|
Calculate cost of the rotor. |
|
Calculate mass of the turbine. |
|
Calculate cost of the turbine. |
|
Calculate cost of all the independently transported components listed above. |
|
Calculate cost of transporting the turbine's components to the site. |