buffalo_wings.airfoil.CstGeometrySide

class buffalo_wings.airfoil.CstGeometrySide(*, shape, n1=0.5, n2=1.0, delta_te=0.0)[source]

Bases: object

One CST side geometry expressed in class-shape form.

Methods

class_value(x)

Evaluate the CST class function.

class_x(x)

Evaluate the first derivative of the CST class function.

class_xx(x)

Evaluate the second derivative of the CST class function.

demote_degree(*[, count, continuity])

Lower the Bezier shape degree with constrained demotion.

promote_degree(*[, count])

Raise the Bezier shape degree without changing the side geometry.

rebuild_with_shape(shape, *[, delta_te])

Return one side rebuilt with a replacement Bezier shape curve.

shape_value(x)

Evaluate the Bezier shape curve.

shape_x(x)

Evaluate the first derivative of the Bezier shape curve.

shape_xx(x)

Evaluate the second derivative of the Bezier shape curve.

y(x)

Evaluate the CST side ordinate.

y_x(x)

Evaluate the first derivative of the CST side ordinate.

y_xx(x)

Evaluate the second derivative of the CST side ordinate.

Attributes

coefficients

Return the Bernstein coefficients of the shape curve.

delta_te

Return the linear trailing-edge term.

n1

Return the leading-edge class exponent.

n2

Return the trailing-edge class exponent.

shape

Return the one-dimensional Bezier curve.

property shape: BezierCurve1D

Return the one-dimensional Bezier curve.

This property exposes the one-dimensional Bezier curve used by the CST side.

property coefficients: buffalo_core.typing.FloatArray

Return the Bernstein coefficients of the shape curve.

This property exposes the stored Bernstein coefficients for the one-dimensional Bezier curve.

property n1: buffalo_core.typing.FloatScalar

Return the leading-edge class exponent.

This property stores the leading-edge class exponent.

property n2: buffalo_core.typing.FloatScalar

Return the trailing-edge class exponent.

This property stores the trailing-edge class exponent.

property delta_te: buffalo_core.typing.FloatScalar

Return the linear trailing-edge term.

This property stores the linear trailing-edge term for this side.

rebuild_with_shape(shape, *, delta_te=None)[source]

Return one side rebuilt with a replacement Bezier shape curve.

Parameters:
  • shape (BezierCurve1D) – Replacement one-dimensional Bezier shape curve.

  • delta_te (FloatScalar | None, default None) – Replacement side-local trailing-edge term. When omitted, the current side-local value is reused.

Returns:

Rebuilt CST side with the same exponents and trailing-edge term.

Return type:

CstGeometrySide

promote_degree(*, count=1)[source]

Raise the Bezier shape degree without changing the side geometry.

Parameters:

count (int, default 1) – Number of Bezier degree-elevation steps to apply to the stored shape curve.

Returns:

Rebuilt CST side with an exact elevated Bezier shape curve.

Return type:

CstGeometrySide

demote_degree(*, count=1, continuity='NOT_CONNECTED')[source]

Lower the Bezier shape degree with constrained demotion.

Parameters:
  • count (int, default 1) – Number of Bezier degree-reduction steps to apply to the stored shape curve.

  • continuity ({"NOT_CONNECTED", "C0", "C1", "C2"},) – default=”NOT_CONNECTED” Symmetric endpoint continuity preserved during each Bezier demotion step.

Returns:

Rebuilt CST side with a reduced-degree Bezier shape curve.

Return type:

CstGeometrySide

Notes

This operation is intentionally approximate unless the original shape curve is exactly reducible to the requested lower degree.

class_value(x)[source]

Evaluate the CST class function.

Parameters:

x (buffalo_core.typing.FloatInput) – Chordwise coordinates, typically in [0, 1].

Returns:

Class-function values at x.

Return type:

buffalo_core.typing.FloatArray

class_x(x)[source]

Evaluate the first derivative of the CST class function.

Parameters:

x (buffalo_core.typing.FloatInput) – Chordwise coordinates, typically in [0, 1].

Returns:

First derivative values of the class function at x.

Return type:

buffalo_core.typing.FloatArray

class_xx(x)[source]

Evaluate the second derivative of the CST class function.

Parameters:

x (buffalo_core.typing.FloatInput) – Chordwise coordinates, typically in [0, 1].

Returns:

Second derivative values of the class function at x.

Return type:

buffalo_core.typing.FloatArray

shape_value(x)[source]

Evaluate the Bezier shape curve.

Parameters:

x (buffalo_core.typing.FloatInput) – Chordwise coordinates, typically in [0, 1].

Returns:

Shape-function values at x.

Return type:

buffalo_core.typing.FloatArray

shape_x(x)[source]

Evaluate the first derivative of the Bezier shape curve.

Parameters:

x (buffalo_core.typing.FloatInput) – Chordwise coordinates, typically in [0, 1].

Returns:

First derivative values of the shape curve at x.

Return type:

buffalo_core.typing.FloatArray

shape_xx(x)[source]

Evaluate the second derivative of the Bezier shape curve.

Parameters:

x (buffalo_core.typing.FloatInput) – Chordwise coordinates, typically in [0, 1].

Returns:

Second derivative values of the shape curve at x.

Return type:

buffalo_core.typing.FloatArray

y(x)[source]

Evaluate the CST side ordinate.

Parameters:

x (buffalo_core.typing.FloatInput) – Chordwise coordinates, typically in [0, 1].

Returns:

Surface ordinate values for this side at x.

Return type:

buffalo_core.typing.FloatArray

y_x(x)[source]

Evaluate the first derivative of the CST side ordinate.

Parameters:

x (buffalo_core.typing.FloatInput) – Chordwise coordinates, typically in [0, 1].

Returns:

First derivative values dy/dx for this side at x.

Return type:

buffalo_core.typing.FloatArray

y_xx(x)[source]

Evaluate the second derivative of the CST side ordinate.

Parameters:

x (buffalo_core.typing.FloatInput) – Chordwise coordinates, typically in [0, 1].

Returns:

Second derivative values d2y/dx2 for this side at x.

Return type:

buffalo_core.typing.FloatArray