fastoad.models.aerodynamics.aerodynamics_landing module

Aero computation for landing phase

class fastoad.models.aerodynamics.aerodynamics_landing.AerodynamicsLanding(**kwargs)[source]

Bases: openmdao.core.group.Group

Computes aerodynamic characteristics at landing.

  • Computes CL and CD increments due to high-lift devices at landing.

  • Computes maximum CL of the aircraft in landing conditions.

Maximum 2D CL without high-lift is computed using XFoil (or provided as input if option use_xfoil is set to False). 3D CL is deduced using sweep angle.

Contribution of high-lift devices is modelled according to their geometry (span and chord ratio) and their deflection angles.

Set the solvers to nonlinear and linear block Gauss–Seidel by default.

Parameters

**kwargs (dict) – dict of arguments available here and in all descendants of this Group.

initialize()[source]

Perform any one-time initialization run at instantiation.

setup()[source]

Build this group.

This method should be overidden by your Group’s method. The reason for using this method to add subsystem is to save memory and setup time when using your Group while running under MPI. This avoids the creation of systems that will not be used in the current process.

You may call ‘add_subsystem’ to add systems to this group. You may also issue connections, and set the linear and nonlinear solvers for this group level. You cannot safely change anything on children systems; use the ‘configure’ method instead.

Available attributes:

name pathname comm options

class fastoad.models.aerodynamics.aerodynamics_landing.ComputeMachReynolds(**kwargs)[source]

Bases: openmdao.core.explicitcomponent.ExplicitComponent

Mach and Reynolds computation

Store some bound methods so we can detect runtime overrides.

Parameters

**kwargs (dict of keyword arguments) – Keyword arguments that will be mapped into the Component options.

setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

setup_partials()[source]

Declare partials.

This is meant to be overridden by component classes. All partials should be declared here since this is called after all size/shape information is known for all variables.

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.

class fastoad.models.aerodynamics.aerodynamics_landing.Compute3DMaxCL(**kwargs)[source]

Bases: openmdao.core.explicitcomponent.ExplicitComponent

Computes 3D max CL from 2D CL (XFOIL-computed) and sweep angle

Store some bound methods so we can detect runtime overrides.

Parameters

**kwargs (dict of keyword arguments) – Keyword arguments that will be mapped into the Component options.

setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

setup_partials()[source]

Declare partials.

This is meant to be overridden by component classes. All partials should be declared here since this is called after all size/shape information is known for all variables.

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.