fastoad.models.performances.mission.openmdao.mission module¶
OpenMDAO component for time-step computation of missions.
- class fastoad.models.performances.mission.openmdao.mission.Mission(**kwargs)[source]¶
Bases:
openmdao.core.group.Group
Computes a mission as specified in mission input file.
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.
- 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
- property flight_points: pandas.core.frame.DataFrame¶
Dataframe that lists all computed flight point data.
- class fastoad.models.performances.mission.openmdao.mission.MissionComponent(**kwargs)[source]¶
Bases:
openmdao.core.explicitcomponent.ExplicitComponent
Computes a mission as specified in mission input file
- Options:
propulsion_id: (mandatory) the identifier of the propulsion wrapper.
- out_file: if provided, a csv file will be written at provided path with all computed
flight points.
mission_wrapper: the MissionWrapper instance that defines the mission.
- use_initializer_iteration: During first solver loop, a complete mission computation can
fail or consume useless CPU-time. When activated, this option ensures the first iteration is done using a simple, dummy, formula instead of the specified mission. Set this option to False if you do expect this model to be computed only once.
- is_sizing: if True, TOW will be considered equal to MTOW and mission payload will be
considered equal to design payload.
- 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.