def setup(self):
        surface = self.options['surface']

        self.add_subsystem('nodes',
                 ComputeNodes(surface=surface),
                 promotes_inputs=['mesh'], promotes_outputs=['nodes'])

        self.add_subsystem('assembly',
                 AssembleKGroup(surface=surface),
                 promotes_inputs=['A', 'Iy', 'Iz', 'J', 'nodes'], promotes_outputs=['local_stiff_transformed'])

        self.add_subsystem('structural_mass',
                 Weight(surface=surface),
                 promotes_inputs=['A', 'nodes'],
                 promotes_outputs=['structural_mass', 'element_mass'])

        self.add_subsystem('structural_cg',
            StructuralCG(surface=surface),
            promotes_inputs=['nodes', 'structural_mass', 'element_mass'],
            promotes_outputs=['cg_location'])

        if surface['fem_model_type'] == 'wingbox':
            self.add_subsystem('fuel_vol',
                WingboxFuelVol(surface=surface),
                promotes_inputs=['nodes', 'A_int'],
                promotes_outputs=['fuel_vols'])
Beispiel #2
0
    def setup(self):
        surface = self.options['surface']

        self.add_subsystem('nodes',
                           ComputeNodes(surface=surface),
                           promotes_inputs=['mesh'],
                           promotes_outputs=['nodes'])

        self.add_subsystem('assembly',
                           AssembleK(surface=surface),
                           promotes_inputs=['A', 'Iy', 'Iz', 'J', 'nodes'],
                           promotes_outputs=['K'])

        self.add_subsystem(
            'structural_weight',
            Weight(surface=surface),
            promotes_inputs=['A', 'nodes', 'load_factor'],
            promotes_outputs=['structural_weight', 'element_weights'])

        self.add_subsystem(
            'structural_cg',
            StructuralCG(surface=surface),
            promotes_inputs=['nodes', 'structural_weight', 'element_weights'],
            promotes_outputs=['cg_location'])
Beispiel #3
0
    def test(self):
        surface = get_default_surfaces()[0]

        comp = ComputeNodes(surface=surface)

        run_test(self, comp)