def test_jsonrecorder(self): sout = StringIO() self.top.recorders = [JSONCaseRecorder(sout)] self.top.run() # with open('jsonrecorder.new', 'w') as out: # out.write(sout.getvalue()) verify_json(self, sout, 'jsonrecorder.json')
def test_jsonrecorder(self): sout = StringIO() self.top.recorders = [JSONCaseRecorder(sout)] self.top.run() if os.environ.get('REGEN_JSON_FILES'): with open('jsonrecorder.new', 'w') as out: out.write(sout.getvalue()) verify_json(self, sout, 'jsonrecorder.json')
def test_jsonrecorder_norun(self): # test ability to get model data from case recorder # without calling run() sout = StringIO() self.top.recorders = [JSONCaseRecorder(sout)] self.top.record_configuration() # with open('jsonrecorder_norun.new', 'w') as out: # out.write(sout.getvalue()) verify_json(self, sout, 'jsonrecorder_norun.json')
def test_jsonrecorder_norun(self): # test ability to get model data from case recorder # without calling run() sout = StringIO() self.top.recorders = [JSONCaseRecorder(sout)] self.top.record_configuration() if os.environ.get('REGEN_JSON_FILES'): with open('jsonrecorder_norun.new', 'w') as out: out.write(sout.getvalue()) verify_json(self, sout, 'jsonrecorder_norun.json')
def test_multiple_objectives(self): sout = StringIO() self.top.add('driver', SensitivityDriver()) self.top.driver.workflow.add(['comp1', 'comp2']) self.top.driver.add_parameter(['comp1.x'], low=-100, high=100) self.top.driver.add_objective('comp1.z') self.top.driver.add_objective('comp2.z') self.top.recorders = [JSONCaseRecorder(sout)] self.top.run() # with open('multiobj.new', 'w') as out: # out.write(sout.getvalue()) verify_json(self, sout, 'multiobj.json')
def test_multiple_objectives(self): sout = StringIO() self.top.add('driver', SensitivityDriver()) self.top.driver.workflow.add(['comp1', 'comp2']) self.top.driver.add_parameter(['comp1.x'], low=-100, high=100) self.top.driver.add_objective('comp1.z') self.top.driver.add_objective('comp2.z') self.top.recorders = [JSONCaseRecorder(sout)] self.top.run() if os.environ.get('REGEN_JSON_FILES'): with open('multiobj.new', 'w') as out: out.write(sout.getvalue()) verify_json(self, sout, 'multiobj.json')
def test_nested(self): asm3 = Assembly() asm3.add('comp1', ExecComp(exprs=['z=x+y'])) driver = asm3.add('driver', SLSQPdriver()) driver.workflow.add('comp1') driver.add_parameter('comp1.y', low=-1, high=1, start=0) driver.add_objective('comp1.z') driver.add_constraint('comp1.z >= 0') asm3.create_passthrough('comp1.x') asm3.create_passthrough('comp1.z') asm2 = Assembly() asm2.add('comp1', ExecComp(exprs=['z=x+y'])) asm2.add('asm3', asm3) asm2.connect('comp1.z', 'asm3.x') driver = asm2.add('driver', SLSQPdriver()) driver.workflow.add(('comp1', 'asm3')) driver.add_parameter('comp1.y', low=-1, high=1, start=0) driver.add_objective('asm3.z') driver.add_constraint('comp1.z >= 0') asm2.create_passthrough('comp1.x') asm2.create_passthrough('asm3.z') asm1 = set_as_top(Assembly()) asm1.add('comp1', ExecComp(exprs=['z=x+y'])) asm1.add('asm2', asm2) asm1.connect('comp1.z', 'asm2.x') driver = asm1.add('driver', SLSQPdriver()) driver.workflow.add(('comp1', 'asm2')) driver.add_parameter('comp1.y', low=-1, high=1, start=0) driver.add_objective('asm2.z') driver.add_constraint('comp1.z >= 0') sout = StringIO() asm1.recorders = [JSONCaseRecorder(sout)] asm1.run() if os.environ.get('REGEN_JSON_FILES'): with open('nested.new', 'w') as out: out.write(sout.getvalue()) verify_json(self, sout, 'nested.json')