nodeid_delar.reverse()
edgeid_delar.reverse()
eleid_delar.reverse()
print "Nodes to delete: ", nodeid_delar
print "Edges to delete: ", edgeid_delar
print "Elements to delete: ", eleid_delar

for e in edgeid_delar:
        triangle.delete_edgeid(e)
for e in eleid_delar:
        triangle.delete_eleid(e)
# Note: Delete nodes at last to make sure that they are not used by any elements or edges
for n in nodeid_delar:
        triangle.delete_nodeid(n)

if debug>0: 
        print "save node file as ", filename, "_nosup2.node"
triangle.save_nodefile(triangle.nodes, 2, filename+"_nosup2.node")
if debug>0: 
        print "save ele file as ", filename, "_nosup2.ele"
triangle.save_elefile(triangle.eles, triangle.region_ids, filename+"_nosup2.ele")
if debug>0: 
        print "save edge file as ", filename, "_nosup2.edge"
triangle.save_edgefile2(triangle.edges, triangle.surface_ids, triangle.edge_attribute1, filename+"_nosup2.edge")






eleid_delar = list(eleid_del)
nodeid_delar.sort()
edgeid_delar.sort()
eleid_delar.sort()
nodeid_delar.reverse()
edgeid_delar.reverse()
eleid_delar.reverse()
print "Nodes to delete: ", nodeid_delar
print "Edges to delete: ", edgeid_delar
print "Elements to delete: ", eleid_delar

for e in edgeid_delar:
    triangle.delete_edgeid(e)
for e in eleid_delar:
    triangle.delete_eleid(e)
# Note: Delete nodes at last to make sure that they are not used by any elements or edges
for n in nodeid_delar:
    triangle.delete_nodeid(n)

if debug > 0:
    print "save node file as ", filename, "_nosup2.node"
triangle.save_nodefile(triangle.nodes, 2, filename + "_nosup2.node")
if debug > 0:
    print "save ele file as ", filename, "_nosup2.ele"
triangle.save_elefile(triangle.eles, triangle.region_ids,
                      filename + "_nosup2.ele")
if debug > 0:
    print "save edge file as ", filename, "_nosup2.edge"
triangle.save_edgefile2(triangle.edges, triangle.surface_ids,
                        triangle.edge_attribute1, filename + "_nosup2.edge")
Example #3
0
triangle.read_elefile(filename + '.ele')

copy_eles = copy.deepcopy(triangle.eles)
copy_region_ids = copy.deepcopy(triangle.region_ids)
copy_edges = copy.deepcopy(triangle.edges)
copy_surface_ids = copy.deepcopy(triangle.surface_ids)
copy_surfaceowner_ids = [-1 for i in range(0, len(triangle.surface_ids))
                         ]  # Will store the elemed id for each surface edge
copy_nodes = copy.deepcopy(triangle.nodes)

# Now assign the surfaceowner_id to the external boundaries
for e in range(0, len(copy_surfaceowner_ids)):
    if copy_surfaceowner_ids[e] >= 0:
        print "Internal Error. Ask [email protected]!"
        exit()
    if len(triangle.ele_with_edgeids(e)) != 1:
        print "Error Found internal boundary!"
        exit()
    copy_surfaceowner_ids[e] = triangle.ele_with_edgeids(e)[0] + 1

if debug > 0:
    print "save node file as ", filename, "_edgow.node"
triangle.save_nodefile(copy_nodes, 2, filename + "_edgow.node")
if debug > 0:
    print "save ele file as ", filename, "_edgow.ele"
triangle.save_elefile(copy_eles, copy_region_ids, filename + "_edgow.ele")
if debug > 0:
    print "save edge file as ", filename, "_edgow.edge"
triangle.save_edgefile2(copy_edges, copy_surface_ids, copy_surfaceowner_ids,
                        filename + "_edgow.edge")
triangle.read_edgefile(filename+'.edge')
triangle.read_elefile(filename+'.ele')

copy_eles=copy.deepcopy(triangle.eles)
copy_region_ids=copy.deepcopy(triangle.region_ids)
copy_edges=copy.deepcopy(triangle.edges)
copy_surface_ids=copy.deepcopy(triangle.surface_ids)
copy_surfaceowner_ids=[-1 for i in range(0,len(triangle.surface_ids))] # Will store the elemed id for each surface edge
copy_nodes=copy.deepcopy(triangle.nodes)

# Now assign the surfaceowner_id to the external boundaries
for e in range(0,len(copy_surfaceowner_ids)):
        if copy_surfaceowner_ids[e]>=0:
                print "Internal Error. Ask [email protected]!"
                exit()                 
        if len(triangle.ele_with_edgeids(e))!=1:
                print "Error Found internal boundary!"
                exit()
        copy_surfaceowner_ids[e]=triangle.ele_with_edgeids(e)[0]+1

if debug>0: 
        print "save node file as ", filename, "_edgow.node"
triangle.save_nodefile(copy_nodes, 2, filename+"_edgow.node")
if debug>0: 
        print "save ele file as ", filename, "_edgow.ele"
triangle.save_elefile(copy_eles, copy_region_ids, filename+"_edgow.ele")
if debug>0: 
        print "save edge file as ", filename, "_edgow.edge"
triangle.save_edgefile2(copy_edges, copy_surface_ids, copy_surfaceowner_ids, filename+"_edgow.edge")