gemseo.problems.mdo.sobieski.core.aerodynamics module#

Aerodynamics discipline for the Sobieski's SSBJ use case.

class SobieskiAerodynamics(sobieski_base)[source]#

Bases: SobieskiDiscipline

Aerodynamics discipline for the Sobieski's SSBJ use case.

Parameters:

sobieski_base (SobieskiBase) -- The Sobieski base.

execute(x_shared, y_12, y_32, x_2, true_cstr=False, c_4=None)[source]#

Compute the drag and the lift-to-drag ratio.

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_12 (ndarray) -- The coupling variable from the structure disciplines, where y_12[0] is the total aircraft weight and y_12[1] is the wing twist.

  • y_32 (ndarray) -- The coupling variable (engine scale factor) from the propulsion discipline,

  • x_2 (ndarray) -- The friction coefficient.

  • 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_4 (ndarray | None) -- The minimum drag coefficient. If None, use SobieskiBase.constants().

Returns:

  • y_2: The outputs of the aerodynamics analysis:
    • y_2[0]: the lift,

    • y_2[1]: the drag,

    • y_2[2]: the lift/drag ratio,

  • y_21: The coupling variable (lift) for the structure discipline,

  • y_23: The coupling variable (drag) for the propulsion discipline,

  • y_24: The coupling variable (lift/drag ratio)

    for the mission discipline,

  • g_2: The pressure gradient to be constrained.

Return type:

The aerodynamics outputs

linearize(x_shared, y_12, y_32, x_2, c_4=None)[source]#

Compute the Jacobian of the drag and lift-to-drag ratio.

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_12 (ndarray) -- The coupling variable from the structure disciplines, where y_12[0] is the total aircraft weight and y_12[1] is the wing twist.

  • y_32 (ndarray) -- The coupling variable (engine scale factor) from the propulsion discipline,

  • x_2 (ndarray) -- The friction coefficient.

  • c_4 (ndarray | None) -- The minimum drag coefficient. If None, use SobieskiBase.constants().

Returns:

The Jacobian of the outputs.

Return type:

dict[str, dict[str, ndarray]]

PRESSURE_GRADIENT_LIMIT = 1.04#