Source code for aviary.core.static_group
import openmdao.api as om
from aviary.utils.functions import promote_aircraft_and_mission_vars
from aviary.variable_info.functions import override_aviary_vars
[docs]
class StaticGroup(om.Group):
"""Aviary top-level group that is not a dynamic mission.
This class is used for top pre_mission and post_mission groups.
"""
[docs]
def configure(self):
"""
Configure this group for pre or post mission.
Promote aircraft and mission variables.
Override output aviary variables.
"""
external_outputs = promote_aircraft_and_mission_vars(self)
if not hasattr(self, 'core_subsystems'):
# TODO Post mission doesn't support core subsystems yet.
return
core_subs = self.core_subsystems
override_aviary_vars(
core_subs,
core_subs.options['aviary_options'],
external_overrides=external_outputs,
code_origin_overrides=core_subs.code_origin_overrides,
)