def objective(yStretching): yGrid, dy = gridGen.GetGrid(config["Grid"]["origin"][1], config["Grid"]["yWidth"], config["Grid"]["yNum"], config["Grid"]["yType"], yStretching, False) return dy[1]/deltaNu - yPlus
def objective(yStretching): yGrid, dy = gridGen.GetGrid(config["Grid"]["origin"][1], 2.0 * h, config["Grid"]["yNum"], config["Grid"]["yType"], yStretching, False, StagMinus=True) return dy[1] / deltaNu - yPlusTrg
xNum = data["Grid"]["xNum"] yNum = data["Grid"]["yNum"] zNum = data["Grid"]["zNum"] xWidth = data["Grid"]["xWidth"] yWidth = data["Grid"]["yWidth"] zWidth = data["Grid"]["zWidth"] xOrigin = data["Grid"]["origin"][0] yOrigin = data["Grid"]["origin"][1] zOrigin = data["Grid"]["origin"][2] ############################################################################## # Compute Grid # ############################################################################## yGrid, dy = gridGen.GetGrid(data["Grid"]["origin"][1], data["Grid"]["yWidth"], data["Grid"]["yNum"], data["Grid"]["yType"], data["Grid"]["yStretching"], False) # Correct boundaries that are staggered yGrid[0] += 0.5 * dy[0] yGrid[yNum + 1] -= 0.5 * dy[yNum + 1] ############################################################################## # Load reference solution # ############################################################################## sciacoEtAl = pandas.read_csv("sciacoEtAl.dat") ############################################################################## # Load average files # ##############################################################################
assert config["BC"]["xBCRight"]["type"] == "NSCBC_Outflow" config["BC"]["xBCRight"]["P"] = PInf assert config["BC"]["yBCLeft"]["type"] == "NSCBC_Outflow" config['BC']["yBCLeft"]["P"] = PInf assert config["BC"]["yBCRight"]["type"] == "NSCBC_Outflow" config["BC"]["yBCRight"]["P"] = PInf ############################################################################## # Generate Grid # ############################################################################## xGrid, dx = gridGen.GetGrid(config["Grid"]["origin"][0], config["Grid"]["xWidth"], config["Grid"]["xNum"], config["Grid"]["xType"], 1.0, False) yGrid, dy = gridGen.GetGrid(config["Grid"]["origin"][1], config["Grid"]["yWidth"], config["Grid"]["yNum"], config["Grid"]["yType"], config["Grid"]["yStretching"], False) zGrid, dz = gridGen.GetGrid(config["Grid"]["origin"][2], config["Grid"]["zWidth"], config["Grid"]["zNum"], config["Grid"]["zType"], 1.0, True) # Set maxTime config["Integrator"]["maxTime"] = config["Grid"]["xWidth"] / ( 0.5 * (U_Ox + U_F)) * FTT
# Compute distance from leading edge deltaStarNorm = 0.0 for i in range(Np - 1): deltaStarNorm += (1.0 - 0.5 * (uB[i + 1] / TB[i + 1] + uB[i] / TB[i])) * (etaB[i + 1] - etaB[i]) x0 = (deltaStarIn / deltaStarNorm)**2 * rhoInf * UInf / muInf Rex0 = UInf * rhoInf * x0 / muInf ############################################################################## # Compute Grid # ############################################################################## xGrid, dx = gridGen.GetGrid(config["Grid"]["origin"][0], config["Grid"]["xWidth"], config["Grid"]["xNum"], config["Grid"]["xType"], config["Grid"]["xStretching"], False) yGrid, dy = gridGen.GetGrid(config["Grid"]["origin"][1], config["Grid"]["yWidth"], config["Grid"]["yNum"], config["Grid"]["yType"], config["Grid"]["yStretching"], False) # Correct boundaries that are staggered yGrid[0] += 0.5 * dy[0] ############################################################################## # Load reference solution # ############################################################################## CfProf = pandas.read_csv("Cf.csv")
rhoIn = fin["rho"][:] temperatureIn = fin["temperature"][:] MolarFracsIn = fin["MolarFracs"][:] temperatureIn = fin["temperature"][:] channelForcing = fin.attrs["channelForcing"] nSpec = MolarFracsIn.shape[3] ############################################################################## # New Generate Grid # ############################################################################## xGrid, dx = gridGen.GetGrid(config["Grid"]["origin"][0], config["Grid"]["xWidth"], config["Grid"]["xNum"], config["Grid"]["xType"], config["Grid"]["yStretching"], args.Xper) yGrid, dy = gridGen.GetGrid(config["Grid"]["origin"][1], config["Grid"]["yWidth"], config["Grid"]["yNum"], config["Grid"]["yType"], config["Grid"]["yStretching"], args.Yper) zGrid, dz = gridGen.GetGrid(config["Grid"]["origin"][2], config["Grid"]["zWidth"], config["Grid"]["zNum"], config["Grid"]["zType"], config["Grid"]["zStretching"],
xWidth = config["Grid"]["xWidth"] yWidth = config["Grid"]["yWidth"] zWidth = config["Grid"]["zWidth"] xOrigin = config["Grid"]["origin"][0] yOrigin = config["Grid"]["origin"][1] zOrigin = config["Grid"]["origin"][2] #gamma = data["Flow"]["gamma"] ############################################################################## # Compute Grid # ############################################################################## yGrid, dy = gridGen.GetGrid(config["Grid"]["origin"][1], config["Grid"]["yWidth"], config["Grid"]["yNum"], config["Grid"]["yType"], config["Grid"]["yStretching"], False, StagMinus=True, StagPlus=True) ############################################################################## # Load reference solution # ############################################################################## data = pandas.read_csv("Coleman.dat") ############################################################################## # Load average files # ############################################################################## f = h5py.File(args.input_file, "r")
A = fsolve(objective, [0.01, 0.5]) F_0, G_0 = A U = odeint(CBLFun, [u_0, F_0, h_0, G_0, g_0], eta) u, F, h, G, g = U.T T = 1.0 + 0.5*h*(gamma - 1.0)*MaInf**2 v = (eta*u/T - g)*T*0.5 return eta, u, v, T ############################################################################## # Generate y grid that will be used in the solver # ############################################################################## y, dy = gridGen.GetGrid(data["Grid"]["origin"][1], data["Grid"]["yWidth"], data["Grid"]["yNum"], data["Grid"]["yType"], data["Grid"]["yStretching"], False, StagMinus=True) ############################################################################## # Compute the profile on this grid # ############################################################################## x = Re*nuInf/U etaB, uB, vB, TB = GetCBL() yB = etaB*x/np.sqrt(Re) uB *= U vB *= U/np.sqrt(Re) TB *= TInf # Get VorticityScale