def test_unit_simplify(self): comp = Component() comp.add_input('y', units='ft*ft/ft') comp.add_output('z', units='ft*ft/ft') self.assertEqual(comp._static_var_rel2meta['y']['units'], 'ft') self.assertEqual(comp._static_var_rel2meta['z']['units'], 'ft')
def test_fd_skip_keys(self): prob = Problem() root = prob.root = Group() comp = Component() comp.add_param('x', 0.) comp.add_param('y', 0.) comp.add_output('z', 0.) comp.solve_nonlinear = lambda p, u, r: u.__setitem__('z', 1.) comp._get_fd_params = lambda: ['x'] comp.jacobian = lambda a, b, c: {('z', 'x'): 0.} root.add('comp', comp, promotes=['x', 'y']) root.add('px', ParamComp('x', 0.), promotes=['*']) root.add('py', ParamComp('y', 0.), promotes=['*']) prob.setup(check=False) prob.run() try: prob.check_partial_derivatives(out_stream=None) except KeyError as err: self.fail('KeyError raised: {0}'.format(str(err)))
def setUp(self): self.comp = Component()