def computeCurl(): if CTK.t == []: return vars = VARS[3].get() vars = vars.replace(' ', '') vars = vars.split(';') CTK.saveTree() try: CTK.t = P.computeCurl(CTK.t, vars) except Exception as e: Panels.displayErrors([0, str(e)], header='Error: computeCurl') CTK.TXT.insert('START', 'Curl computation failed.\n') CTK.TXT.insert('START', 'Error: ', 'Error') return CTK.TXT.insert('START', 'Curl computed.\n') CTK.TKTREE.updateApp() CTK.display(CTK.t) if CTK.TKPLOTXY is not None: CTK.TKPLOTXY.updateApp()
def F(x, y, z): return 12 * y * y + 4 #----- # 2D #----- ni = 30 nj = 40 m = G.cart((0, 0, 0), (10. / (ni - 1), 10. / (nj - 1), 1), (ni, nj, 1)) C._initVars(m, 'F1', F, ['CoordinateX', 'CoordinateY', 'CoordinateZ']) C._addVars(m, 'F2') C._addVars(m, 'F3') varname = ['F1', 'F2', 'F3'] m = P.computeCurl(m, varname) C._initVars(m, 'centers:F4', F, ['centers:rotx', 'centers:roty', 'centers:rotz']) C._addVars(m, 'centers:F5') C._addVars(m, 'centers:F6') m = C.addBC2Zone(m, 'ov', 'BCOverlap', 'imin') t = C.newPyTree(['Base', 2, m]) t[2][1] = C.addState(t[2][1], 'Mach', 0.6) varname = ['centers:F4', 'centers:F5', 'centers:F6'] t = P.computeCurl(t, varname) test.testT(t, 2) #----- # 3D #----- ni = 30
# - computeCurl (pyTree) - import Converter.PyTree as C import Post.PyTree as P import Generator.PyTree as G ni = 30 nj = 40 nk = 3 m = G.cart((0, 0, 0), (10. / (ni - 1), 10. / (nj - 1), 1), (ni, nj, nk)) m = C.initVars(m, '{F1}=12*{CoordinateY}*{CoordinateY}+4') m = C.addVars(m, 'F2') m = C.addVars(m, 'F3') varname = ['F1', 'F2', 'F3'] m = P.computeCurl(m, varname) C.convertPyTree2File(m, 'out.cgns')