def test_2(self):
        surface = get_default_surfaces()[0]
        surface['distributed_fuel_weight'] = True

        comp = TotalLoads(surface=surface)

        run_test(self, comp, complex_flag=True)
    def test_1(self):
        surface = get_default_surfaces()[0]
        surface['struct_weight_relief'] = True

        comp = TotalLoads(surface=surface)

        run_test(self, comp, complex_flag=True)
Example #3
0
    def setup(self):
        surface = self.options['surface']

        size = int(6 * surface['num_y'] + 6)

        self.add_subsystem('struct_weight_loads',
                           StructureWeightLoads(surface=surface),
                           promotes_inputs=['element_weights', 'nodes'],
                           promotes_outputs=['struct_weight_loads'])
        self.add_subsystem('total_loads',
                           TotalLoads(surface=surface),
                           promotes_inputs=['loads', 'struct_weight_loads'],
                           promotes_outputs=['total_loads'])
        self.add_subsystem('create_rhs',
                           CreateRHS(surface=surface),
                           promotes_inputs=['total_loads', 'element_weights'],
                           promotes_outputs=['forces'])
        self.add_subsystem('fem',
                           FEM(size=size),
                           promotes_inputs=['*'],
                           promotes_outputs=['*'])
        self.add_subsystem('disp',
                           Disp(surface=surface),
                           promotes_inputs=['*'],
                           promotes_outputs=['*'])
Example #4
0
    def setup(self):
        surface = self.options['surface']

        promotes = []
        if surface['struct_weight_relief']:
            self.add_subsystem(
                'struct_weight_loads',
                StructureWeightLoads(surface=surface),
                promotes_inputs=['element_mass', 'nodes', 'load_factor'],
                promotes_outputs=['struct_weight_loads'])
            promotes.append('struct_weight_loads')

        if surface['distributed_fuel_weight']:
            self.add_subsystem('fuel_loads',
                               FuelLoads(surface=surface),
                               promotes_inputs=[
                                   'nodes', 'load_factor', 'fuel_vols',
                                   'fuel_mass'
                               ],
                               promotes_outputs=['fuel_weight_loads'])
            promotes.append('fuel_weight_loads')

        if 'n_point_masses' in surface.keys():
            self.add_subsystem('point_masses',
                               ComputePointMassLoads(surface=surface),
                               promotes_inputs=[
                                   'point_mass_locations', 'point_masses',
                                   'nodes', 'load_factor'
                               ],
                               promotes_outputs=['loads_from_point_masses'])
            promotes.append('loads_from_point_masses')

            self.add_subsystem('thrust_loads',
                               ComputeThrustLoads(surface=surface),
                               promotes_inputs=[
                                   'point_mass_locations', 'engine_thrusts',
                                   'nodes'
                               ],
                               promotes_outputs=['loads_from_thrusts'])
            promotes.append('loads_from_thrusts')

        self.add_subsystem('total_loads',
                           TotalLoads(surface=surface),
                           promotes_inputs=['loads'] + promotes,
                           promotes_outputs=['total_loads'])

        self.add_subsystem('create_rhs',
                           CreateRHS(surface=surface),
                           promotes_inputs=['total_loads'],
                           promotes_outputs=['forces'])

        self.add_subsystem('fem',
                           FEM(surface=surface),
                           promotes_inputs=['*'],
                           promotes_outputs=['*'])

        self.add_subsystem('disp',
                           Disp(surface=surface),
                           promotes_inputs=['*'],
                           promotes_outputs=['*'])
Example #5
0
    def setup(self):
        surface = self.options['surface']

        wingbox_promotes = []
        if surface['struct_weight_relief']:
            self.add_subsystem('struct_weight_loads',
                     StructureWeightLoads(surface=surface),
                     promotes_inputs=['element_mass', 'nodes', 'load_factor'],
                     promotes_outputs=['struct_weight_loads'])
            wingbox_promotes.append('struct_weight_loads')

        if surface['distributed_fuel_weight']:
            self.add_subsystem('fuel_loads',
                     FuelLoads(surface=surface),
                     promotes_inputs=['nodes', 'load_factor', 'fuel_vols', 'fuel_mass'],
                     promotes_outputs=['fuel_weight_loads'])
            wingbox_promotes.append('fuel_weight_loads')

        self.add_subsystem('total_loads',
                 TotalLoads(surface=surface),
                 promotes_inputs=['loads'] + wingbox_promotes,
                 promotes_outputs=['total_loads'])

        self.add_subsystem('create_rhs',
                 CreateRHS(surface=surface),
                 promotes_inputs=['total_loads'], promotes_outputs=['forces'])

        self.add_subsystem('fem',
                 FEM(surface=surface),
                 promotes_inputs=['*'], promotes_outputs=['*'])

        self.add_subsystem('disp',
                 Disp(surface=surface),
                 promotes_inputs=['*'], promotes_outputs=['*'])
    def test(self):
        surface = get_default_surfaces()[0]

        comp = TotalLoads(surface=surface)

        run_test(self, comp, complex_flag=True)