gemseo / problems / sobieski / core

propulsion module

Propulsion discipline for the Sobieski’s SSBJ use case.

class gemseo.problems.sobieski.core.propulsion.SobieskiPropulsion(sobieski_base)[source]

Bases: gemseo.problems.sobieski.core.discipline.SobieskiDiscipline

Propulsion discipline for the Sobieski’s SSBJ use case.

Parameters

sobieski_base (gemseo.problems.sobieski.core.utils.SobieskiBase) – The Sobieski base.

Return type

None

execute(x_shared, y_23, x_3, true_cstr=False, c_3=None)[source]

Compute the fuel consumption, engine weight and engine scale factor.

Parameters
  • x_shared (ndarray) – The values of the shared design variables, where x_shared[0] is the thickness/chord ratio, x_shared[1] is the altitude, x_shared[2] is the Mach number, x_shared[3] is the aspect ratio, x_shared[4] is the wing sweep and x_shared[5] is the wing surface area.

  • y_23 (ndarray) – The drag coefficient.

  • x_3 (ndarray) – The throttle.

  • true_cstr (bool) –

    If True, return the value of the constraint outputs. Otherwise, return the distance to the corresponding constraint thresholds.

    By default it is set to False.

  • c_3 (float | None) –

    The reference engine weight. If None, use SobieskiBase.constants().

    By default it is set to None.

Returns

  • y_3: The outputs of the propulsion analysis:
    • y_3[0]: the specific fuel consumption,

    • y_3[1]: the engine weight,

    • y_3[2]: the engine scale factor,

  • g_3: The propulsion outputs to be constrained:
    • g_3[0]: the engine scale factor,

    • g_3[1]: the engine temperature,

    • g_3[2]: the throttle setting.

Return type

The propulsion outputs

linearize(x_shared, y_23, x_3, true_cstr=False, c_3=None)[source]

Derive the fuel consumption, engine weight and engine scale factor.

Parameters
  • x_shared (ndarray) – The values of the shared design variables, where x_shared[0] is the thickness/chord ratio, x_shared[1] is the altitude, x_shared[2] is the Mach number, x_shared[3] is the aspect ratio, x_shared[4] is the wing sweep and x_shared[5] is the wing surface area.

  • y_23 (ndarray) – The drag coefficient.

  • x_3 (ndarray) – The throttle.

  • true_cstr (bool) –

    If True, return the value of the constraint outputs. Otherwise, return the distance to the corresponding constraint thresholds.

    By default it is set to False.

  • c_3 (float | None) –

    The reference engine weight. If None, use SobieskiBase.constants().

    By default it is set to None.

Returns

The Jacobian of the discipline.

Return type

dict[str, dict[str, ndarray]]

DTYPE_COMPLEX = 'complex128'
DTYPE_DOUBLE = 'float64'
ESF_LOWER_LIMIT = 0.5
ESF_UPPER_LIMIT = 1.5
TEMPERATURE_LIMIT = 1.02
property constants
property dtype
property math