Turbine Design Math

turbodesign.turbine_math.T0_coolant_weighted_average(row: BladeRow) ndarray[tuple[Any, ...], dtype[_ScalarT]][source]

Calculate the new weighted Total Temperature array considering coolant

Parameters:
  • row (BladeRow) – Coolant

  • massflow (np.ndarray) – massflow mainstream

Returns:

Total Temperature drop

Return type:

float

turbodesign.turbine_math.compute_quantities(row: BladeRow, upstream: BladeRow)[source]

Calculation of all quantites after radial equilibrium has been solved assuming we know the static pressure at the exit.

Note

Radial Equilibrium gives P0, T0, Vm. This code assumes the loss either enthalpy or pressure loss has already been calculated

compute_velocity has been called so we know W, Wt, V, Vt, U, M, M_rel

Static Pressure and Temperature should come from Total Temperature and Pressure + Velocity

Parameters:
  • row (BladeRow) – current blade row. All quantities are at exit

  • upstream (BladeRow) – upstream blade row. All quantities are at exit

turbodesign.turbine_math.compute_reynolds(rows: List[BladeRow], passage: Passage)[source]

Calculates the Reynolds Number

Parameters:
  • rows (List[BladeRow]) – Blade row to calculate the Reynolds number

  • passage (Passage) – Passage

turbodesign.turbine_math.inlet_calc(row: BladeRow)[source]

Calculates the conditions for the Inlet

Parameters:

row (BladeRow) – _description_

turbodesign.turbine_math.rotor_calc(row: BladeRow, upstream: BladeRow, calculate_vm: bool = True, outlet_type: OutletType = OutletType.static_pressure)[source]

Calculates quantities given beta2

Parameters:
  • row (BladeRow) – Rotor Row

  • upstream (BladeRow) – Stator Row or Rotor Row

  • calculate_vm (bool) – True to calculate the meridional velocity. False, do not calculate this and let radeq calculate it

  • outlet_type (OutletType) – OutletType.static_pressure if static conditions defined at outlet, OutletType.total_pressure if total conditions defined

turbodesign.turbine_math.stator_calc(row: BladeRow, upstream: BladeRow, downstream: BladeRow | None = None, calculate_vm: bool = True, outlet_type: OutletType = OutletType.static_pressure)[source]

Given P0, T0, P, alpha2 of stator calculate all other quantities

Usage:

Set row.P0 = upstream.P0 - any pressure loss row.T0 = upstream.T0 - any cooling row.P = row.rp*(row.P0 - rotor.P) + rotor.P Set alpha2

Parameters:
  • row (BladeRow) – Stator Row

  • upstream (BladeRow) – Stator or Rotor Row

  • downstream (BladeRow) – Stator or Rotor Row. Defaults to None

  • calculate_vm (bool) – True to calculate the meridional velocity. False, do not calculate this and let radeq calculate it

  • outlet_type (OutletType) – OutletType.static_pressure if static conditions defined at outlet, OutletType.total_pressure if total conditions defined