Skip to main content

I/O for various mesh formats

Project description

meshio
======

|Build Status| |codecov.io| |PyPi Version| |GitHub stars|

.. raw:: html

<p align="center">

|image4|

.. raw:: html

</p>

There are various mesh formats available for representing unstructured
meshes, e.g.,

- `ANSYS
msh <http://www.afs.enea.it/fluent/Public/Fluent-Doc/PDF/chp03.pdf>`__
- `DOLFIN
XML <http://manpages.ubuntu.com/manpages/wily/man1/dolfin-convert.1.html>`__
- `Exodus <https://cubit.sandia.gov/public/13.2/help_manual/WebHelp/finite_element_model/exodus/block_specification.htm>`__
- `H5M <https://www.mcs.anl.gov/~fathom/moab-docs/h5mmain.html>`__
- `Medit <https://people.sc.fsu.edu/~jburkardt/data/medit/medit.html>`__
- `MED/Salome <http://docs.salome-platform.org/latest/dev/MEDCoupling/med-file.html>`__
- `Gmsh <http://gmsh.info/doc/texinfo/gmsh.html#File-formats>`__
- `OFF <http://segeval.cs.princeton.edu/public/off_format.html>`__
- `PERMAS <http://www.intes.de>`__
- `VTK <https://www.vtk.org/wp-content/uploads/2015/04/file-formats.pdf>`__
- `VTU <https://www.vtk.org/Wiki/VTK_XML_Formats>`__
- `XDMF <http://www.xdmf.org/index.php/XDMF_Model_and_Format>`__

meshio can read and write all of these formats and smoothly converts
between them. Simply call

::

meshio-convert input.msh output.vtu

with any of the supported formats.

In Python, simply call

.. code:: python

points, cells, point_data, cell_data, field_data = \
meshio.read(args.infile)

to read a mesh. To write, do

.. code:: python

points = numpy.array([
[0.0, 0.0, 0.0],
[0.0, 1.0, 0.0],
[0.0, 0.0, 1.0],
])
cells = {
'triangle': numpy.array([
[0, 1, 2]
])
}
meshio.write(
'foo.vtk',
points,
cells,
# Optionally provide extra data on points, cells, etc.
# point_data=point_data,
# cell_data=cell_data,
# field_data=field_data
)

For both input and output, you can optionally specify the exact
``file_format`` (in case you would like to enforce binary over ASCII
VTK, for example).

Installation
~~~~~~~~~~~~

meshio is `available from the Python Package
Index <https://pypi.python.org/pypi/meshio/>`__, so simply type

::

pip install -U meshio

to install or upgrade.

Usage
~~~~~

Just

::

import meshio

and make use of all the goodies the module provides.

Testing
~~~~~~~

To run the meshio unit tests, check out this repository and type

::

pytest

Distribution
~~~~~~~~~~~~

To create a new release

1. bump the ``__version__`` number,

2. tag and upload to PyPi:

::

make publish

License
~~~~~~~

meshio is published under the `MIT
license <https://en.wikipedia.org/wiki/MIT_License>`__.

.. |Build Status| image:: https://travis-ci.org/nschloe/meshio.svg?branch=master
:target: https://travis-ci.org/nschloe/meshio
.. |codecov.io| image:: https://codecov.io/github/nschloe/meshio/branch/master/graphs/badge.svg
:target: https://codecov.io/github/nschloe/meshio/branch/master
.. |PyPi Version| image:: https://img.shields.io/pypi/v/meshio.svg
:target: https://pypi.python.org/pypi/meshio
.. |GitHub stars| image:: https://img.shields.io/github/stars/nschloe/meshio.svg?style=social&label=Stars&maxAge=2592000
:target: https://github.com/nschloe/meshio
.. |image4| image:: https://nschloe.github.io/meshio/meshio_logo.png
:width: 20.0%


Project details


Release history Release notifications | RSS feed

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 Distribution

meshio-1.10.3-py2.py3-none-any.whl (42.6 kB view hashes)

Uploaded Python 2 Python 3

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