propulsion module¶
Propulsion discipline for the Sobieski’s SSBJ use case.
- class gemseo.problems.sobieski.core.propulsion.SobieskiPropulsion(sobieski_base)[source]
Bases:
SobieskiDiscipline
Propulsion discipline for the Sobieski’s SSBJ use case.
- Parameters:
sobieski_base (SobieskiBase) – The Sobieski base.
- 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 andx_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
, useSobieskiBase.constants()
.
- 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 andx_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
, useSobieskiBase.constants()
.
- Returns:
The Jacobian of the discipline.
- Return type:
- ESF_LOWER_LIMIT = 0.5
- ESF_UPPER_LIMIT = 1.5
- TEMPERATURE_LIMIT = 1.02