TurbineBuilder Class Reference
Kynema API
A flexible multibody structural dynamics code for wind turbines
|
Builder class for creating Turbine objects with a fluent interface pattern. More...
#include <turbine_builder.hpp>
Public Member Functions | |
TurbineBuilder ()=default | |
const TurbineInput & | Input () |
Get the current turbine input configuration. | |
Turbine | Build (Model &model) |
Build a Turbine object from the current configuration. | |
components::BeamBuilder & | Blade (size_t blade_index) |
Get reference to builder for a specific blade. | |
components::BeamBuilder & | Tower () |
Get reference to builder for the tower. | |
TurbineBuilder & | SetYawBearingInertiaMatrix (const std::array< std::array< double, 6 >, 6 > &matrix) |
Set the yaw bearing inertia matrix (6x6) | |
TurbineBuilder & | SetHubInertiaMatrix (const std::array< std::array< double, 6 >, 6 > &matrix) |
Set the hub inertia matrix (6x6) | |
TurbineBuilder & | SetTowerBasePosition (const std::array< double, 7 > &position) |
Set the position of the tower base node. | |
TurbineBuilder & | SetTowerAxisToRotorApex (double distance) |
Set the distance from tower axis to hub i.e. distance from tower axis -> rotor apex (meters) | |
TurbineBuilder & | SetTowerTopToRotorApex (double height) |
Set the hub height above the tower top i.e. distrance from tower top -> rotor apex (meters) | |
TurbineBuilder & | SetRotorApexToHub (double distance) |
Distance from rotor apex to hub center of mass (meters) | |
TurbineBuilder & | SetHubDiameter (double diameter) |
Set the hub diameter (meters) | |
TurbineBuilder & | SetShaftTiltAngle (double angle) |
Set the shaft tilt angle (degrees) | |
TurbineBuilder & | SetNacelleYawAngle (double angle) |
Set the initial nacelle yaw angle (radians) | |
TurbineBuilder & | SetConeAngle (double angle) |
Set the initial cone angle (radians) | |
TurbineBuilder & | SetBladePitchAngle (double angle) |
Set the initial blade pitch angle (radians) | |
TurbineBuilder & | SetAzimuthAngle (double angle) |
Set the azimuth angle (radiams) | |
TurbineBuilder & | SetRotorSpeed (double speed) |
Set the initial rotor speed (rad/s) | |
Detailed Description
Builder class for creating Turbine objects with a fluent interface pattern.
Constructor & Destructor Documentation
◆ TurbineBuilder()
|
default |
Member Function Documentation
◆ Blade()
components::BeamBuilder & kynema::interfaces::components::TurbineBuilder::Blade | ( | size_t | blade_index | ) |
Get reference to builder for a specific blade.
- Parameters
-
blade_index The index of the blade
- Returns
- Reference to the blade builder
◆ Build()
◆ Input()
const TurbineInput & kynema::interfaces::components::TurbineBuilder::Input | ( | ) |
Get the current turbine input configuration.
- Returns
- Reference to the current turbine input
◆ SetAzimuthAngle()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetAzimuthAngle | ( | double | angle | ) |
Set the azimuth angle (radiams)
- Parameters
-
angle The azimuth angle to set
- Returns
- Reference to the builder for method chaining
◆ SetBladePitchAngle()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetBladePitchAngle | ( | double | angle | ) |
Set the initial blade pitch angle (radians)
- Parameters
-
angle The blade pitch angle to set
- Returns
- Reference to the builder for method chaining
◆ SetConeAngle()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetConeAngle | ( | double | angle | ) |
Set the initial cone angle (radians)
- Parameters
-
angle The cone angle to set
- Returns
- Reference to the builder for method chaining
◆ SetHubDiameter()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetHubDiameter | ( | double | diameter | ) |
Set the hub diameter (meters)
- Parameters
-
diameter The hub diameter to set (meters)
- Returns
- Reference to this builder for method chaining
◆ SetHubInertiaMatrix()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetHubInertiaMatrix | ( | const std::array< std::array< double, 6 >, 6 > & | matrix | ) |
Set the hub inertia matrix (6x6)
- Parameters
-
matrix The inertia matrix to set, includes hub assembly mass and inertia
- Returns
- Reference to the builder for method chaining
◆ SetNacelleYawAngle()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetNacelleYawAngle | ( | double | angle | ) |
Set the initial nacelle yaw angle (radians)
- Parameters
-
angle The nacelle yaw angle to set
- Returns
- Reference to the builder for method chaining
◆ SetRotorApexToHub()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetRotorApexToHub | ( | double | distance | ) |
Distance from rotor apex to hub center of mass (meters)
- Parameters
-
distance The distance to set (meters)
- Returns
- Reference to the builder for method chaining
◆ SetRotorSpeed()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetRotorSpeed | ( | double | speed | ) |
Set the initial rotor speed (rad/s)
- Parameters
-
speed The rotor speed to set
- Returns
- Reference to the builder for method chaining
◆ SetShaftTiltAngle()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetShaftTiltAngle | ( | double | angle | ) |
Set the shaft tilt angle (degrees)
- Parameters
-
angle The shaft tilt angle to set
- Returns
- Reference to the builder for method chaining
◆ SetTowerAxisToRotorApex()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetTowerAxisToRotorApex | ( | double | distance | ) |
Set the distance from tower axis to hub i.e. distance from tower axis -> rotor apex (meters)
- Parameters
-
distance The distance to set
- Returns
- Reference to the builder for method chaining
◆ SetTowerBasePosition()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetTowerBasePosition | ( | const std::array< double, 7 > & | position | ) |
Set the position of the tower base node.
- Parameters
-
position Array containing position/orientation [x,y,z,qw,qx,qy,qz]
- Returns
- Reference to the builder for method chaining
◆ SetTowerTopToRotorApex()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetTowerTopToRotorApex | ( | double | height | ) |
Set the hub height above the tower top i.e. distrance from tower top -> rotor apex (meters)
- Parameters
-
height The hub height to set
- Returns
- Reference to the builder for method chaining
◆ SetYawBearingInertiaMatrix()
TurbineBuilder & kynema::interfaces::components::TurbineBuilder::SetYawBearingInertiaMatrix | ( | const std::array< std::array< double, 6 >, 6 > & | matrix | ) |
Set the yaw bearing inertia matrix (6x6)
- Parameters
-
matrix The inertia matrix to set, includes yaw bearing and nacelle mass with inertia about yaw bearing i.e. system_inertia_tt in WindIO
- Returns
- Reference to the builder for method chaining
◆ Tower()
components::BeamBuilder & kynema::interfaces::components::TurbineBuilder::Tower | ( | ) |
Get reference to builder for the tower.
- Returns
- Reference to the tower builder
The documentation for this class was generated from the following files:
- /home/runner/work/kynema/kynema/kynema/src/interfaces/components/turbine_builder.hpp
- /home/runner/work/kynema/kynema/kynema/src/interfaces/components/turbine_builder.cpp
Generated by