Exemplo n.º 1
0
    pass

MESH_FILE = "meshes/fullcell.inp"
mesh = meshio.importAbaqus(MESH_FILE, 1e-6)[0]

metis.tetmesh2metis(mesh, 'meshes/partition/fullcell.metis')

from subprocess import call
print "Generate partition for desktop computer (from 2 cores to 10 cores)"
for i in range(2, 11, 2):
    call([
        'mpmetis', '-ncommon=3', '-minconn', '-niter=1000',
        'meshes/partition/fullcell.metis',
        '%i' % (i)
    ])
    metis_parts = metis.readPartition(
        'meshes/partition/fullcell.metis.epart.%i' % (i))
    surf_tris = mesh.getSurfTris()
    tri_parts = gd.partitionTris(mesh, metis_parts, surf_tris)
    gd.printPartitionStat(metis_parts, tri_parts)

print "Generate partition for supercomputer (from 100 cores to 2000 cores)"
for i in range(2100, 5001, 100):
    call([
        'mpmetis', '-ncommon=3', '-minconn', '-niter=1000',
        'meshes/partition/fullcell.metis',
        '%i' % (i)
    ])
    metis_parts = metis.readPartition(
        'meshes/partition/fullcell.metis.epart.%i' % (i))
    surf_tris = mesh.getSurfTris()
    tri_parts = gd.partitionTris(mesh, metis_parts, surf_tris)
Exemplo n.º 2
0
    pass

MESH_FILE = "meshes/branch.inp"
mesh = meshio.importAbaqus(MESH_FILE, 1e-6)[0]

metis.tetmesh2metis(mesh, 'meshes/partition/branch.metis')

from subprocess import call
print "Generate partition for desktop computer (from 2 cores to 10 cores)"
for i in range(2, 11, 2):
    call([
        'mpmetis', '-ncommon=3', '-minconn', '-niter=1000',
        'meshes/partition/branch.metis',
        '%i' % (i)
    ])
    metis_parts = metis.readPartition(
        'meshes/partition/branch.metis.epart.%i' % (i))
    surf_tris = mesh.getSurfTris()
    tri_parts = gd.partitionTris(mesh, metis_parts, surf_tris)
    gd.printPartitionStat(metis_parts, tri_parts)

print "Generate partition for supercomputer (from 50 cores to 1000 cores)"
for i in range(50, 1001, 50):
    call([
        'mpmetis', '-ncommon=3', '-minconn', '-niter=1000',
        'meshes/partition/branch.metis',
        '%i' % (i)
    ])
    metis_parts = metis.readPartition(
        'meshes/partition/branch.metis.epart.%i' % (i))
    surf_tris = mesh.getSurfTris()
    tri_parts = gd.partitionTris(mesh, metis_parts, surf_tris)