(api:land-2020)=
# NLR Land-Based 2020 Model

```{eval-rst}
.. autoclass:: csm.models.nlr2020.Land2020NLR
    :members:
    :inherited-members: CSMBase
    :exclude-members: turbine_class, rated_power_kw, rotor_diameter, efficiency_max, num_bearings,
        num_blades, blade_has_carbon, blade_mass_coeff, blade_mass_cost_coeff, blade_mass,
        blade_cost, hub_mass_coeff, hub_mass_intercept, hub_mass_cost_coeff, hub_mass, hub_cost,
        max_tip_speed, rated_rpm, rotor_torque, pitch_bearing_mass_coeff,
        pitch_bearing_mass_intercept, bearing_housing_fraction, mass_sys_offset,
        pitch_system_mass_cost_coeff, pitch_system_mass, pitch_system_cost, spinner_mass_coeff,
        spinner_mass_intercept, spinner_mass_cost_coeff, spinner_mass, spinner_cost, lss_mass_coeff,
        lss_mass_intercept, lss_mass_exp, lss_mass_cost_coeff, low_speed_shaft_mass,
        low_speed_shaft_cost, bearing_mass_coeff, bearing_mass_exp, bearing_mass_cost_coeff,
        bearing_mass, bearing_cost, gearbox_torque_density, gearbox_torque_cost, gearbox_mass,
        gearbox_cost, brake_mass_coeff, brake_mass_cost_coeff, brake_mass, brake_cost,
        hss_mass_coeff, hss_mass_cost_coeff, high_speed_shaft_mass, high_speed_shaft_cost,
        generator_mass_coeff, generator_mass_intercept, generator_mass_cost_coeff, generator_mass,
        generator_cost, bedplate_mass_exp, bedplate_mass_cost_coeff, bedplate_mass, bedplate_cost,
        yaw_system_non_bearing_mass_coeff, yaw_system_mass_coeff, yaw_system_mass_exp,
        yaw_system_mass_cost_coeff, yaw_system_mass, yaw_system_cost, hvac_mass_coeff,
        hvac_mass_cost_coeff, hydraulic_cooling_mass, hydraulic_cooling_cost,
        nacelle_cover_mass_coeff, nacelle_cover_mass_intercept, nacelle_cover_mass_cost_coeff,
        nacelle_cover_mass, nacelle_cover_cost, has_crane, crane_mass, crane_cost,
        platform_mainframe_mass_coeff, platform_mainframe_mass_cost_coeff, platform_mainframe_mass,
        platform_mainframe_cost, transformer_mass_coeff, transformer_mass_intercept,
        transformer_mass_cost_coeff, transformer_mass, transformer_cost, controls_mass,
        controls_cost_coeff, controls_cost, electrical_connection_mass,
        electrical_connection_cost_coeff, electrical_connection_cost, converter_mass,
        converter_mass_cost_coeff, converter_cost, tower_mass_coeff, tower_length, tower_mass_exp,
        tower_mass_cost_coeff, tower_mass, tower_cost, nacelle_mass, nacelle_cost, hub_system_mass,
        hub_system_cost, rotor_mass, rotor_cost, turbine_mass, turbine_cost, turbine_cost_kw,
        transport_cost, turbine_production_cost, tower_flange_material_cost,
        tower_flange_production_cost, tower_section_mass_max, num_tower_sections,
        blade_transport_cost, hub_transport_cost, power_electronics_transport_cost,
        drivetrain_transport_cost, tower_transport_cost, parts_transport_cost,
        update, reset_values, from_dict,
        parameter_map, parameter_graph, get_results, get_component_breakdown,
        _all_result_names, _mass_result_names, _cost_result_names, output_names,
        fields, fields_dict, _has_values, _validate_inputs, _prepare_calculation,
        parameterize, parameterize_subset, run, get_dependent_attributes,
        get_descendant_attributes, _get_attr_map,
        get_all_results, get_mass_results, get_cost_results, irs_mpc_breakdown, total_domestic_content,
        rotor_radius, swept_area, rated_power_mw,
        calculate_subsystem_mass, calculate_subsystem_cost, calculate_system_mass,
        calculate_system_cost, calculate,
        calculate_blade_mass, calculate_blade_cost, calculate_hub_mass, calculate_hub_cost,
        calculate_pitch_system_mass, calculate_pitch_system_cost, calculate_spinner_mass,
        calculate_spinner_cost, calculate_low_speed_shaft_mass, calculate_low_speed_shaft_cost,
        calculate_bearing_mass, calculate_bearing_cost, calculate_rotor_torque,
        calculate_gearbox_mass, calculate_gearbox_cost, calculate_brake_mass, calculate_brake_cost,
        calculate_high_speed_shaft_mass, calculate_high_speed_shaft_cost, calculate_generator_mass,
        calculate_generator_cost, calculate_bedplate_mass, calculate_bedplate_cost,
        calculate_yaw_system_mass, calculate_yaw_system_cost, calculate_hydraulic_cooling_mass,
        calculate_hydraulic_cooling_cost, calculate_nacelle_cover_mass,
        calculate_nacelle_cover_cost, calculate_platform_mainframe_mass,
        calculate_platform_mainframe_cost, calculate_transformer_mass, calculate_transformer_cost,
        calculate_controls_mass, calculate_controls_cost, calculate_electrical_connection_mass,
        calculate_electrical_connection_cost, calculate_converter_mass,
        calculate_converter_mass_cost_coeff, calculate_converter_cost, calculate_tower_mass,
        calculate_tower_cost, calculate_nacelle_mass, calculate_nacelle_cost,
        calculate_hub_system_mass, calculate_hub_system_cost, calculate_rotor_mass,
        calculate_rotor_cost, calculate_turbine_mass, calculate_turbine_cost,
        calculate_turbine_cost,
        calculate_blade_transport_cost, calculate_hub_transport_cost,
        calculate_power_electronics_transport_cost, calculate_num_tower_sections,
        calculate_tower_transport_cost, calculate_drivetrain_transport_cost,
        calculate_parts_transport_cost, calculate_transport_cost,
        calculate_crane_mass, calculate_crane_cost,
        blade_mass_exp, pitch_blade_mass_coeff, pitch_system_mass_coeff, pitch_blade_mass_intercept,
        lss_mass_coeff1, lss_mass_coeff2, gearbox_torque_exp, gearbox_mass_cost_coeff,
        brake_mass_intercept, bedplate_mass_coeff, bedplate_mass_intercept, crane_mass_cost_coeff,
        tower_mass_intercept, transport_power_electronics_cost_coeff,
        transport_drivetrain_cost_coeff, transport_drivetrain_cost_coeff2,
        transport_blade_cost_coeff, transport_blade_cost_coeff2, transport_blade_cost_coeff3,
        transport_blade_cost_intercept, transport_hub_cost_intercept, transport_tower_cost_coeff,
        tower_section_mass_max, transport_misc_parts_cost_coeff, _mass_result_name,
```

## Updated Scaling Relationships

The following calculations were overridden from the base model (`CSMBase`) based on available
industry and open source data at its time of development.

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_blade_mass
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_pitch_system_mass
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_low_speed_shaft_mass
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_gearbox_mass
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_gearbox_cost
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_bedplate_mass
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_hydraulic_cooling_mass
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_platform_mainframe_mass
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_platform_mainframe_cost
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_crane_mass
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_crane_cost
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_tower_mass
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_nacelle_mass
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_nacelle_cost
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_blade_transport_cost
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_hub_transport_cost
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_power_electronics_transport_cost
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_drivetrain_transport_cost
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_tower_transport_cost
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_parts_transport_cost
```

```{eval-rst}
.. automethod:: csm.models.Land2020NLR.calculate_transport_cost
```

```{include} ./_shared_functionality.md
```

<!-- NOTE: Below is a modification to _base_calculations.md to include 2020-specific models -->

## 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_blade_mass`](#csm.models.Land2020NLR.calculate_blade_mass)() | Calculate mass of a single blade. |
| Rotor | [`calculate_blade_cost`](#csm.models.CSMBase.calculate_blade_cost)() | Calculate cost of a single blade. |
| Hub System | [`calculate_hub_mass`](#csm.models.Land2020NLR.calculate_hub_mass)() | Calculate mass of the hub. |
| Hub System | [`calculate_hub_cost`](#csm.models.CSMBase.calculate_hub_cost)() | Calculate cost of the hub. |
| Hub System | [`calculate_pitch_system_mass`](#csm.models.Land2020NLR.calculate_pitch_system_mass)() | Calculate mass of the pitch system. |
| Hub System | [`calculate_pitch_system_cost`](#csm.models.CSMBase.calculate_pitch_system_cost)() | Calculate cost of the pitch system. |
| Hub System | [`calculate_spinner_mass`](#csm.models.CSMBase.calculate_spinner_mass)() | Calculate mass of the spinner (nose cone). |
| Hub System | [`calculate_spinner_cost`](#csm.models.CSMBase.calculate_spinner_cost)() | Calculate cost of the spinner (nose cone). |
| Nacelle | [`calculate_low_speed_shaft_mass`](#csm.models.Land2020NLR.calculate_low_speed_shaft_mass)() | Calculate mass of the low speed shaft. |
| Nacelle | [`calculate_low_speed_shaft_cost`](#csm.models.CSMBase.calculate_low_speed_shaft_cost)() | Calculate cost of the low speed shaft. |
| Nacelle | [`calculate_bearing_mass`](#csm.models.CSMBase.calculate_bearing_mass)() | Calculate mass of a single main bearing. |
| Nacelle | [`calculate_bearing_cost`](#csm.models.CSMBase.calculate_bearing_cost)() | Calculate cost of a single main bearing. |
| Nacelle | [`calculate_rotor_torque`](#csm.models.CSMBase.calculate_rotor_torque)() | Calculate the rotor_torque (:math:`Nm`). |
| Nacelle | [`calculate_gearbox_mass`](#csm.models.Land2020NLR.calculate_gearbox_mass)() | Calculate mass of the gearbox. |
| Nacelle | [`calculate_gearbox_cost`](#csm.models.Land2020NLR.calculate_gearbox_cost)() | Calculate cost of the gearbox. |
| Nacelle | [`calculate_brake_mass`](#csm.models.CSMBase.calculate_brake_mass)() | Calculate mass of the brakes. |
| Nacelle | [`calculate_brake_cost`](#csm.models.CSMBase.calculate_brake_cost)() | Calculate cost of the brakes. |
| Nacelle | [`calculate_high_speed_shaft_mass`](#csm.models.Land2020NLR.calculate_high_speed_shaft_mass)() | Unused in the 2020 model. |
| Nacelle | [`calculate_high_speed_shaft_cost`](#csm.models.Land2020NLR.calculate_high_speed_shaft_cost)() | Unused in the 2020 model. |
| Nacelle | [`calculate_generator_mass`](#csm.models.CSMBase.calculate_generator_mass)() | Calculate mass of the generator. |
| Nacelle | [`calculate_generator_cost`](#csm.models.CSMBase.calculate_generator_cost)() | Calculate cost of the generator. |
| Nacelle | [`calculate_bedplate_mass`](#csm.models.Land2020NLR.calculate_bedplate_mass)() | Calculate mass of the bedplate. |
| Nacelle | [`calculate_bedplate_cost`](#csm.models.CSMBase.calculate_bedplate_cost)() | Calculate cost of the bedplate. |
| Nacelle | [`calculate_yaw_system_mass`](#csm.models.CSMBase.calculate_yaw_system_mass)() | Calculate mass of the yaw system. |
| Nacelle | [`calculate_yaw_system_cost`](#csm.models.CSMBase.calculate_yaw_system_cost)() | Calculate cost of the yaw system. |
| Nacelle | [`calculate_hydraulic_cooling_mass`](#csm.models.Land2020NLR.calculate_hydraulic_cooling_mass)() | Calculate mass of the HVAC system. |
| Nacelle | [`calculate_hydraulic_cooling_cost`](#csm.models.CSMBase.calculate_hydraulic_cooling_cost)() | Calculate cost of the HVAC system. |
| Nacelle | [`calculate_nacelle_cover_mass`](#csm.models.CSMBase.calculate_nacelle_cover_mass)() | Calculate mass of the nacelle cover. |
| Nacelle | [`calculate_nacelle_cover_cost`](#csm.models.CSMBase.calculate_nacelle_cover_cost)() | Calculate cost of the nacelle cover. |
| Nacelle | [`calculate_platform_mainframe_mass`](#csm.models.Land2020NLR.calculate_platform_mainframe_mass)() | Calculate mass of the platform railing. |
| Nacelle | [`calculate_platform_mainframe_cost`](#csm.models.Land2020NLR.calculate_platform_mainframe_cost)() | Calculate cost of the platform railing. |
| Nacelle | [`calculate_transformer_mass`](#csm.models.CSMBase.calculate_transformer_mass)() | Calculate mass of the transformer. |
| Nacelle | [`calculate_transformer_cost`](#csm.models.CSMBase.calculate_transformer_cost)() | Calculate cost of the transformer. |
| Nacelle | [`calculate_controls_mass`](#csm.models.CSMBase.calculate_controls_mass)() | Calculate mass of the controls system. |
| Nacelle | [`calculate_controls_cost`](#csm.models.CSMBase.calculate_controls_cost)() | Calculate cost of the controls system. |
| Nacelle | [`calculate_electrical_connection_mass`](#csm.models.CSMBase.calculate_electrical_connection_mass)() | Calculate mass of the electrical connections. |
| Nacelle | [`calculate_electrical_connection_cost`](#csm.models.CSMBase.calculate_electrical_connection_cost)() | Calculate cost of the electrical connections. |
| Nacelle | [`calculate_converter_mass`](#csm.models.CSMBase.calculate_converter_mass)() | Calculate mass of the power converter system. |
| Nacelle | [`calculate_converter_cost`](#csm.models.CSMBase.calculate_converter_cost)() | Calculate cost of the power converter system. |
| Tower | [`calculate_tower_mass`](#csm.models.Land2020NLR.calculate_tower_mass)() | Calculate mass of the tower. |
| Tower | [`calculate_tower_cost`](#csm.models.CSMBase.calculate_tower_cost)() | Calculate cost of the tower. |
| Transport | [`calculate_blade_transport_cost`](#csm.models.Land2020NLR.calculate_blade_transport_cost)() | Calculate the total blade transport cost. |
| Transport | [`calculate_hub_transport_cost`](#csm.models.Land2020NLR.calculate_hub_transport_cost)() | Calculate the hub transport cost. |
| Transport | [`calculate_power_electronics_transport_cost`](#csm.models.Land2020NLR.calculate_power_electronics_transport_cost)() | Calculate the power electronics transport cost. |
| Transport | [`calculate_drivetrain_transport_cost`](#csm.models.Land2020NLR.calculate_drivetrain_transport_cost)() | Calculate the drivetrain transport cost. |
| Transport | [`calculate_tower_transport_cost`](#csm.models.Land2020NLR.calculate_tower_transport_cost)() | Calculate the tower transport cost. |
| Transport | [`calculate_transport_cost`](#csm.models.Land2020NLR.calculate_transport_cost)() | Calculate the total transport cost. |

## Subsystem Aggregations (Systems)

| Method | Description |
| ------ | ----------- |
| [`calculate_subsystem_mass`](#csm.models.CSMBase.calculate_subsystem_mass)() | Calculate mass of all subsystems listed above. |
| [`calculate_subsystem_cost`](#csm.models.CSMBase.calculate_subsystem_cost)() | Calculate cost of all subsystems
listed above. |
| [`calculate_nacelle_mass`](#csm.models.Land2020NLR.calculate_nacelle_mass)() | Calculate mass of the nacelle. |
| [`calculate_nacelle_cost`](#csm.models.Land2020NLR.calculate_nacelle_cost)() | Calculate cost of the nacelle. |
| [`calculate_hub_system_mass`](#csm.models.CSMBase.calculate_hub_system_mass)() | Calculate mass of hub system. |
| [`calculate_hub_system_cost`](#csm.models.CSMBase.calculate_hub_system_cost)() | Calculate cost of hub system. |
| [`calculate_rotor_mass`](#csm.models.CSMBase.calculate_rotor_mass)() | Calculate mass of the rotor. |
| [`calculate_rotor_cost`](#csm.models.CSMBase.calculate_rotor_cost)() | Calculate cost of the rotor. |
| [`calculate_turbine_mass`](#csm.models.CSMBase.calculate_turbine_mass)() | Calculate mass of the turbine. |
| [`calculate_turbine_cost`](#csm.models.CSMBase.calculate_turbine_cost)() | Calculate cost of the turbine. |
