optFuncs.evalFuncs = evalFuncs optFuncs.gcomm = gcomm funcsSens = {} funcsSens["CD"] = {} funcsSens["CL"] = {} funcsSens["CMZ"] = {} # Run # shape DASolver() funcsSens["CD"]["shape"] = DASolver.getForwardADDerivVal("CD") funcsSens["CL"]["shape"] = DASolver.getForwardADDerivVal("CL") funcsSens["CMZ"]["shape"] = DASolver.getForwardADDerivVal("CMZ") # pitch DASolver.setOption("useAD", {"dvName": "pitch"}) DASolver.updateDAOption() DASolver() funcsSens["CD"]["pitch"] = DASolver.getForwardADDerivVal("CD") funcsSens["CL"]["pitch"] = DASolver.getForwardADDerivVal("CL") funcsSens["CMZ"]["pitch"] = DASolver.getForwardADDerivVal("CMZ") # aoa DASolver.setOption("useAD", {"dvName": "alpha"}) DASolver.updateDAOption() DASolver() funcsSens["CD"]["alpha"] = DASolver.getForwardADDerivVal("CD") funcsSens["CL"]["alpha"] = DASolver.getForwardADDerivVal("CL") funcsSens["CMZ"]["alpha"] = DASolver.getForwardADDerivVal("CMZ") # ACTD funcsSens["CD"]["actuator"] = [] funcsSens["CL"]["actuator"] = []
DASolver.runColoring() opt = OPT(args.opt, options=optOptions) histFile = "./%s_hist.hst" % args.opt sol = opt(optProb, sens=optFuncs.calcObjFuncSens, storeHistory=histFile) if gcomm.rank == 0: print(sol) elif args.task == "runPrimal": optFuncs.runPrimal() elif args.task == "runAdjoint": optFuncs.runAdjoint() elif args.task == "verifySens": optFuncs.verifySens() elif args.task == "testAPI": DASolver.setOption("primalMinResTol", 1e-2) DASolver.updateDAOption() optFuncs.runPrimal() else: print("task arg not found!") exit(0)
funcsSens = {} funcsSens["CD"] = {} funcsSens["CL"] = {} funcsSens["CMZ"] = {} # Run # beta0 DASolver() funcsSens["CD"]["beta"] = [] funcsSens["CL"]["beta"] = [] funcsSens["CMZ"]["beta"] = [] funcsSens["CD"]["beta"].append(DASolver.getForwardADDerivVal("CD")) funcsSens["CL"]["beta"].append(DASolver.getForwardADDerivVal("CL")) funcsSens["CMZ"]["beta"].append(DASolver.getForwardADDerivVal("CMZ")) # beta100 DASolver.setOption("useAD", {"dvName": "beta", "seedIndex": 100}) DASolver.updateDAOption() DASolver() funcsSens["CD"]["beta"].append(DASolver.getForwardADDerivVal("CD")) funcsSens["CL"]["beta"].append(DASolver.getForwardADDerivVal("CL")) funcsSens["CMZ"]["beta"].append(DASolver.getForwardADDerivVal("CMZ")) # beta1000 DASolver.setOption("useAD", {"dvName": "beta", "seedIndex": 1000}) DASolver.updateDAOption() DASolver() funcsSens["CD"]["beta"].append(DASolver.getForwardADDerivVal("CD")) funcsSens["CL"]["beta"].append(DASolver.getForwardADDerivVal("CL")) funcsSens["CMZ"]["beta"].append(DASolver.getForwardADDerivVal("CMZ")) # alphaPorosity0 DASolver.setOption("useAD", {"dvName": "alphaPorosity", "seedIndex": 0})