fastga.models.propulsion.propulsion module

Base module for propulsion models.

class fastga.models.propulsion.propulsion.IPropulsionCS23[source]

Bases: fastoad.model_base.propulsion.IPropulsion

Interface that should be implemented by propulsion models.

abstract compute_weight() float[source]

Computes total propulsion mass.

Returns

the total uninstalled mass in kg

abstract compute_max_power(flight_points: Union[fastoad.model_base.flight_point.FlightPoint, pandas.core.frame.DataFrame])[source]

Computes max available power on one engine.

Returns

the maximum available power in W

abstract compute_dimensions() -> (<class 'float'>, <class 'float'>, <class 'float'>, <class 'float'>)[source]

Computes propulsion dimensions.

Returns

(height, width, length, wet area) of nacelle in m or m²

abstract compute_drag(mach: Union[float, numpy.array], unit_reynolds: Union[float, numpy.array], wing_mac: float) Union[float, numpy.array][source]

Computes nacelle drag force for out of fuselage engine.

Parameters
  • mach – mach at which drag should be calculated

  • unit_reynolds – unitary Reynolds for calculation

  • wing_mac – wing MAC length in m

Returns

drag force cd0*wing_area

class fastga.models.propulsion.propulsion.BaseOMPropulsionComponent(**kwargs)[source]

Bases: openmdao.core.explicitcomponent.ExplicitComponent, abc.ABC

Base class for OpenMDAO wrapping of subclasses of IEngineForOpenMDAO.

Classes that implements this interface should add their own inputs in setup() and implement get_wrapper().

Store some bound methods so we can detect runtime overrides.

initialize()[source]

Perform any one-time initialization run at instantiation.

setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs, discrete_inputs=None, discrete_outputs=None)[source]

Compute outputs given inputs. The model is assumed to be in an unscaled state.

Parameters
  • inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].

  • outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].

  • discrete_inputs (dict or None) – If not None, dict containing discrete input values.

  • discrete_outputs (dict or None) – If not None, dict containing discrete output values.

abstract static get_wrapper() fastoad.model_base.propulsion.IOMPropulsionWrapper[source]

This method defines the used IOMPropulsionWrapper instance.

Returns

an instance of OpenMDAO wrapper for propulsion model