Skip to main content

Microstructure generation and meshing

Project description

Microgen logo

Microgen is a Python library designed to facilitate microstructure generation and meshing. Here are its core features:

  • Repeated cells: Generation of lattice structures such as octet trusses and honeycombs.
  • Triply Periodic Minimal Surfaces (TPMS): TPMS-based lattice generation known for favorable physical (mechanical, thermal, ...) properties like low density and large surface area.
  • Virtual composites microstructures: Generation of basic reinforcement geometries, including spheres, cylinders, ellipsoids, and more.
  • 3D Voronoi tessellation: Simulation of granular materials and polycrystalline metals.
  • Meshing: Regular and periodic meshing using Gmsh, remeshing using Mmg.

Generation of 3D objects is achievable through functions that utilize Open CASCADE (via Cadquery) or VTK (using PyVista). Neper offers tools for 3D tessellation, while Gmsh handles the generation of both regular and periodic meshes, with Mmg handling remeshing tasks.

Gyroid TPMS

PyPI package PyPI
Conda package Conda
Documentation Documentation
Status Status
Citation DOI
License License
Website Website
Binder Binder

Installation

With pip:

pip install microgen

With conda:

conda install -c conda-forge -c set3mah microgen

To modify the sources, clone this repository and install microgen:

git clone https://github.com/3MAH/microgen.git
cd microgen
pip install -e .[all]
pre-commit install

The -e or --editable option allows to modify the sources without having to reinstall the package and [all] installs the optional development dependencies.

Run tests with pytest:

pytest tests -n auto

Examples

Click on the image to be redirected to the corresponding example on Microgen's documentation

Basic shapes

Repeated cells

Triply Periodic Minimal Surfaces (TPMS)

3D operations

Mesh

Project details


Download files

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

Source Distribution

microgen-1.2.0.tar.gz (24.3 MB view details)

Uploaded Source

Built Distribution

microgen-1.2.0-py3-none-any.whl (62.3 kB view details)

Uploaded Python 3

File details

Details for the file microgen-1.2.0.tar.gz.

File metadata

  • Download URL: microgen-1.2.0.tar.gz
  • Upload date:
  • Size: 24.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for microgen-1.2.0.tar.gz
Algorithm Hash digest
SHA256 e4b54a6c640cafeff9a96a091a9b0858b19f8ab52f0131c67970300385363d38
MD5 7680b5e2418d6cfcd863c700ae8f9e74
BLAKE2b-256 73774e8d06870ed642ebafd80a4a23bc90eacd7aac1e8767075a66b2759e09da

See more details on using hashes here.

File details

Details for the file microgen-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: microgen-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 62.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for microgen-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c5bb7fe77aa00b8ef7901ff859a042c99578af13c9a2f6621a2207d412524d73
MD5 9b3a34464dd10a75bab7236b1165f31c
BLAKE2b-256 2358cb755987c117c30b6feae9c3eec10fbc1ac0114e102fe2d875f1b9922d0d

See more details on using hashes here.

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