Skip to main content

Mesh tools for professionals

Project description

meshpro

Mesh tools for professionals.

MeshPro is a Python library and command-line tool for mesh I/O and mesh manipulation.

It supports all mesh formats supported by meshio.

Install MeshPro with

pip install meshpro

and retrieve a license key.

The full API documentation is here.

You can then use the command-line tool

meshpro convert    input.msh output.vtk   # convert between two formats

meshpro info       input.xdmf             # show some info about the mesh

meshpro compress   input.vtu              # compress the mesh file
meshpro decompress input.vtu              # decompress the mesh file

meshpro binary     input.msh              # convert to binary format
meshpro ascii      input.msh              # convert to ASCII format

or use MeshPro in Python with

import meshpro

MeshPro features

MeshPro meshes work exactly like meshio meshes, and they have a few extras:

import meshpro


# create mesh
mesh = meshpro.Mesh(
    [[0.0, 0.0], [1.0, 0.0], [1.0, 1.0], [0.0, 1.0]],
    [("triangle", [[0, 1, 2], [0, 2, 3]])],
)

# or read it in
# mesh = meshpro.read("mesh.vtk")

# remove duplicate points and take care of the indexing
mesh.deduplicate_points(tol=1.0e-10)

# remove all points which aren't referenced in any cell
mesh.remove_orphaned_points()

# remove a number of points or cells
# mesh.remove_points(mask)
# mesh.remove_cells(mask)

# add boundary cells
mesh.add_boundary_cells()

# add outer normals as cell data
mesh.add_outer_normals()

Other mesh manipulation tools are these:

import meshpro

# extract boudnary mesh
boundary_mesh = boundary_meshmeshpro.extract_boundary_mesh(mesh)

# merge some meshes
mesh = meshpro.merge_meshes([mesh1, mesh2, mesh3])

submesh = meshpro.extract_submesh(mesh, point_mask, cell_mask)

submeshes = meshpro.split_cell_sets(mesh, store_orig_node_ids_as="gid")

License

MeshPro is a commercial product. You need to acquire a license to use it. Trial licenses are available.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

meshpro-0.0.20-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (547.8 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

meshpro-0.0.20-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (546.9 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

meshpro-0.0.20-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (545.8 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

meshpro-0.0.20-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (475.5 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page