.. _RST Overview: Overview ======== Microgen is a simple python library that helps to generate and mesh microstructures. Here are the main features: - Entirely written in Python 3 and based on `CadQuery `_ and `PyVista `_ libraries. - It allows to generate simple reinforcement geometries (spheres, cylinder, ellipsoids, …) to generate virtual composites microstructures. - Three-dimensional Voronoi tessellation rallons to simulate the response granular materials and polycrystalline metals. - Regular mesh and periodic mesh are implemented using `Gmsh `_, remeshing using `Mmg `_ is also implemented. .. image:: https://anaconda.org/set3mah/microgen/badges/version.svg :target: https://anaconda.org/set3MAH/microgen .. image:: https://badge.fury.io/py/microgen.svg :target: https://pypi.org/project/microgen/ .. |3MAH| image:: https://3mah.github.io/assets/images/logo_3mah/3mah_logo_vsmall.png :width: 50 :alt: 3MAH website :target: https://3mah.github.io/ .. |GitHub| image:: https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png :width: 50 :alt: GitHub repository :target: https://github.com/3MAH/microgen ------------------------------------------------------------------------- +----------+-----------------------------------------------------------+ | |3MAH| | `3MAH website `_ | +----------+-----------------------------------------------------------+ | |GitHub| | `GitHub repository `_ | +----------+-----------------------------------------------------------+ ------------------------------------------------------------------------- .. raw:: html

Gyroid TPMS

Brief examples -------------- .. jupyter-execute:: :hide-code: import pyvista pyvista.set_jupyter_backend('static') pyvista.global_theme.background = 'white' pyvista.global_theme.window_size = [600, 400] pyvista.global_theme.axes.show = False pyvista.global_theme.smooth_shading = True pyvista.global_theme.split_sharp_edges = True .. jupyter-execute:: import microgen geometry = microgen.Tpms( surface_function=microgen.surface_functions.gyroid, offset=0.3 ) shape = geometry.sheet shape.plot(color='white')