fastga_he.models.propulsion.components.propulsor.propeller.components.slipstream_lift_increase_ratio module
- class fastga_he.models.propulsion.components.propulsor.propeller.components.slipstream_lift_increase_ratio.SlipstreamPropellerLiftIncreaseRatio(**kwargs)[source]
Bases:
ExplicitComponentAdaptation of the formula taken from [Pat16]. As highlighted in [DVBV19], there is a discontinuity at an AOA of 0.0, which we will solve using a variant of the ostrich algorithm which I’ll call the “is that a division by zero ? Actually it’s divided by 0.5!” algorithm
Store some bound methods so we can detect runtime overrides.
- compute(inputs, outputs, discrete_inputs=None, discrete_outputs=None)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- compute_partials(inputs, partials, discrete_inputs=None)[source]
Compute sub-jacobian parts. The model is assumed to be in an unscaled state.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
partials (Jacobian) – Sub-jac components written to partials[output_name, input_name]..
discrete_inputs (dict or None) – If not None, dict containing discrete input values.
- fastga_he.models.propulsion.components.propulsor.propeller.components.slipstream_lift_increase_ratio.partials_lift_increase_ratio_beta(alpha: ndarray, beta: ndarray, a_p: ndarray, i_p: float, inside_square: ndarray) ndarray[source]
Computes the partials derivative of the lift increase ratio with respect to the beta coefficient, is written in a function to simplify readability since only the AoA changes from one output to the other
- Parameters:
alpha – angle of attack at which the output is computed
beta – height impact coefficient
a_p – axial induction factor at the wing aerodynamic chord
i_p – installation angle of the propeller
inside_square – value of the coefficient inside the square root in the original formula
- fastga_he.models.propulsion.components.propulsor.propeller.components.slipstream_lift_increase_ratio.partials_lift_increase_ratio_a_p(alpha: ndarray, beta: ndarray, a_p: ndarray, i_p: float, inside_square: ndarray) ndarray[source]
Computes the partials derivative of the lift increase ratio with respect to the axial induction factor coefficient, is written in a function to simplify readability since only the AoA changes from one output to the other
- Parameters:
alpha – angle of attack at which the output is computed
beta – height impact coefficient
a_p – axial induction factor at the wing aerodynamic chord
i_p – installation angle of the propeller
inside_square – value of the coefficient inside the square root in the original formula
- fastga_he.models.propulsion.components.propulsor.propeller.components.slipstream_lift_increase_ratio.partials_lift_increase_ratio_i_p(alpha: ndarray, beta: ndarray, a_p: ndarray, i_p: float, inside_square: ndarray) ndarray[source]
Computes the partials derivative of the lift increase ratio with respect to the installation angle, is written in a function to simplify readability since only the AoA changes from one output to the other
- Parameters:
alpha – angle of attack at which the output is computed
beta – height impact coefficient
a_p – axial induction factor at the wing aerodynamic chord
i_p – installation angle of the propeller
inside_square – value of the coefficient inside the square root in the original formula