Blade#

class pynumad.objects.blade.Blade(filename: str = None)#

Bases: object

Blade class

Parameters:

filename (str, optional) – Directory and filename of blade input file to load into the Blade object.

name#

Name of the blade

Type:

str

definition#

Object containing the definition of the blade.

Type:

Definition

geometry#

Object containing the interpolated geometry of the blade

Type:

Geometry

keypoints#

Object containing information about keypoint locations and areas

Type:

KeyPoints

bill_of_materials#
Type:

BillOfMaterials

stackdb#
Type:

StackDatabase

materialdb#
Type:

MaterialDatabase

mesh_size#

Target element size used by mesh generation utilities (default 0.45).

Type:

float

Example

blade = Blade(“path/to/blade.yaml”)

property ispan: ndarray#

Interpolated span stations. Delegates to definition.ispan.

read_yaml(filename: str)#

Populate blade attributes with yaml file data

Parameters:

filename (str) – name of yaml file to be read

Returns:

self

read_excel(filename: str)#

Populate blade attributes with excel file data

Parameters:

filename (str) – name of excel file to be read

Returns:

self

update_blade()#

Generates geometry, keypoints, bill of materials, stack database, and material database based on the blade definition.

expand_blade_geometry_te(min_edge_lengths)#

TODO: docstring

export_bom_tea(file, sheet_name, segments)#

Generate a segmented BOM and export to Excel for TEA cost analysis.

Parameters:
  • file (str) – Output Excel file path.

  • sheet_name (str) – Sheet name in the Excel file.

  • segments (list of dict) –

    Blade segments. Each dict has:

    ’span_nd’ : [start, end] normalized spanwise extents ‘hp_extents’ : [key1, key2] HP chordwise bounds (e.g. [‘le’,’te’]) ‘lp_extents’ : [key1, key2] LP chordwise bounds

Returns:

pd.DataFrame – The assembled bomTEA table.

add_interpolated_station(span_location: float)#

Adds an interpolated station to blade geometry

Parameters:

span_location (float) – location along span between 0 and 1.

Returns:

int – integer index where the new span was inserted