示例#1
0
def _uncompressCartesian(t):
    import Generator.PyTree as G
    zones = Internal.getZones(t)
    for z in zones:
        ztype = Internal.getZoneDim(z)
        if ztype[0] == 'Unstructured': continue
        c = Internal.getNodeFromName1(z, 'CartesianData')
        if c is None: continue
        c = Internal.getValue(c)
        x0 = c[0]
        y0 = c[1]
        z0 = c[2]
        hi = c[3]
        hj = c[4]
        hk = c[5]
        tmp = G.cart((x0, y0, z0), (hi, hj, hk),
                     (ztype[1], ztype[2], ztype[3]))
        gc = Internal.getNodeFromName1(z, Internal.__GridCoordinates__)
        gct = Internal.getNodeFromName1(tmp, Internal.__GridCoordinates__)
        if gc is None: Internal._addChild(z, gct)
        else:
            Internal._rmNodesFromName(z, Internal.__GridCoordinates__)
            Internal._addChild(z, gct)
    return None
Filter = dict()
Filter[path[0]] = DataSpaceMMRY + DataSpaceFILE + DataSpaceGLOB
Filter[path[1]] = DataSpaceMMRY + DataSpaceFILE + DataSpaceGLOB
if rank == 0:
    print(rank, Filter)
comm.barrier()
if rank == 1:
    print(rank, Filter)
comm.barrier()

# ------------------------------------------------------------------------
# 5/ Partial write
dt = I.newCGNSTree()
dn = I.addChild(dt, ['SuperName', CoordX, [], 'DataArray_t'])
I._addChild(dn, ['SuperGirl', CoordY, [], 'DataArray_t'])
C.printTree(dt)

st = I.newCGNSTree()
sn = I.addChild(st, ['SuperName', None, [], 'DataArray_t'])
I._addChild(sn, ['SuperGirl', None, [], 'DataArray_t'])
C.printTree(st)

if (rank == 0):
    C.convertPyTree2File(st, filenameout)
comm.barrier()

C.convertPyTree2FilePartial(dt, filenameout, comm, Filter)

# ------------------------------------------------------------------------
# 6/ Print CGNS Tree