def test_reraise_analylsis_error(self): prob = om.Problem() model = prob.model model.add_subsystem('p1', om.IndepVarComp('x', 0.5)) model.add_subsystem('p2', om.IndepVarComp('x', 3.0)) sub = model.add_subsystem('sub', om.ParallelGroup()) sub.add_subsystem('c1', AEComp()) sub.add_subsystem('c2', AEComp()) sub.nonlinear_solver = om.NonlinearBlockJac() model.add_subsystem('obj', om.ExecComp(['val = x1 + x2'])) model.connect('p1.x', 'sub.c1.x') model.connect('p2.x', 'sub.c2.x') model.connect('sub.c1.y', 'obj.x1') model.connect('sub.c2.y', 'obj.x2') prob.driver = AEDriver() prob.setup() handled = prob.run_driver() self.assertTrue(handled)
def test_reraise_analylsis_error(self): prob = Problem() prob.model = model = Group() model.add_subsystem('p1', IndepVarComp('x', 0.5)) model.add_subsystem('p2', IndepVarComp('x', 3.0)) sub = model.add_subsystem('sub', ParallelGroup()) sub.add_subsystem('c1', AEComp()) sub.add_subsystem('c2', AEComp()) model.add_subsystem('obj', ExecComp(['val = x1 + x2'])) model.connect('p1.x', 'sub.c1.x') model.connect('p2.x', 'sub.c2.x') model.connect('sub.c1.y', 'obj.x1') model.connect('sub.c2.y', 'obj.x2') prob.driver = AEDriver() prob.setup(vector_class=PETScVector, check=False) handled = prob.run_driver() self.assertTrue(handled)