def computeNormGrad(): if CTK.t == []: return varname = VARS[2].get() CTK.saveTree() try: CTK.t = P.computeNormGrad(CTK.t, varname) except Exception as e: Panels.displayErrors([0, str(e)], header='Error: computeNormGrad') CTK.TXT.insert('START', 'Gradient\'s norm computation failed.\n') CTK.TXT.insert('START', 'Error: ', 'Error') return CTK.TXT.insert('START', 'Gradient\'s norm of %s computed.\n' % varname) CTK.TKTREE.updateApp() CTK.display(CTK.t) if CTK.TKPLOTXY is not None: CTK.TKPLOTXY.updateApp()
def F(x, y): return 2 * x + x * y #----- # 1D #----- ni = 30 m = G.cart((0, 0, 0), (10. / (ni - 1), 1, 1), (ni, 1, 1)) m = C.initVars(m, 'Density', F, ['CoordinateX', 'CoordinateY']) t = C.newPyTree(['Base', 1]) t[2][1][2].append(m) t[2][1] = C.addState(t[2][1], 'Mach', 0.6) t = P.computeGrad(t, 'Density') t = C.initVars(t, 'centers:Pressure', F, ['gradxDensity', 'gradyDensity']) t = P.computeNormGrad(t, 'centers:Pressure') test.testT(t, 1) #----- # 2D #----- ni = 30 nj = 40 m = G.cart((0, 0, 0), (10. / (ni - 1), 10. / (nj - 1), 1), (ni, nj, 1)) m = C.initVars(m, 'Density', F, ['CoordinateX', 'CoordinateY']) m = C.addBC2Zone(m, 'ov', 'BCOverlap', 'imin') t = C.newPyTree(['Base', 2]) t[2][1][2].append(m) t[2][1] = C.addState(t[2][1], 'Mach', 0.6) t = P.computeGrad(t, 'Density') t = C.initVars(t, 'centers:Pressure', F, ['gradxDensity', 'gradyDensity'])
# - computeNormGrad (pyTree) - import Converter.PyTree as C import Post.PyTree as P import Generator.PyTree as G ni = 30 nj = 40 nk = 10 m = G.cart((0, 0, 0), (10. / (ni - 1), 10. / (nj - 1), 1), (ni, nj, nk)) m = C.initVars(m, 'Density=2*{CoordinateX}+{CoordinateX}*{CoordinateY}') m = P.computeNormGrad(m, 'Density') C.convertPyTree2File(m, 'out.cgns')
def F(x, y): return 2 * x + x * y #----- # 1D #----- ni = 30 m = G.cart((0, 0, 0), (10. / (ni - 1), 1, 1), (ni, 1, 1)) m = C.initVars(m, 'Density', F, ['CoordinateX', 'CoordinateY']) m = P.computeGrad(m, 'Density') m = C.initVars(m, 'centers:Pressure', F, ['centers:gradxDensity', 'centers:gradyDensity']) m = P.computeNormGrad(m, 'centers:Pressure') test.testT(m, 1) #----- # 2D #----- ni = 30 nj = 40 m = G.cart((0, 0, 0), (10. / (ni - 1), 10. / (nj - 1), 1), (ni, nj, 1)) m = C.initVars(m, 'Density', F, ['CoordinateX', 'CoordinateY']) m = P.computeGrad(m, 'Density') m = C.initVars(m, 'centers:Pressure', F, ['centers:gradxDensity', 'centers:gradyDensity']) m = P.computeNormGrad(m, 'centers:Pressure') test.testT(m, 2)