Microstructure Characterization and Reconstruction in Python: MCRpy

Publikation: Vorabdruck/Dokumentation/BerichtVorabdruck (Preprint)


Microstructure characterization and reconstruction (MCR) is an important prerequisite for empowering and accelerating integrated computational materials engineering. Much progress has been made in MCR recently, however, in absence of a flexible software platform it is difficult to use ideas from other researchers and to develop them further. To address this issue, this work presents MCRpy for easy-to-use, extensible and flexible MCR. The software platform that can be used as a program with graphical user interface, as a command line tool and as a Python library. The central idea is that microstructure reconstruction is formulated as a modular and extensible optimization problem. In this way, any descriptors can be used for characterization and any loss function combining any descriptors can be minimized using any optimizer for reconstruction. With stochastic optimizers, this leads to variations of the well-known Yeong-Torquato algorithm. Furthermore, MCRpy features automatic differentiation, enabling the utilization of gradient-based optimizers. In this work, after a brief introduction to the underlying concepts, the capabilities of MCRpy are demonstrated by exemplarily applying it to typical MCR tasks. Finally, it is shown how to extend MCRpy by defining a new microstructure descriptor and readily using it for reconstruction without additional implementation effort.


PublikationsstatusVeröffentlicht - 11 Juli 2022
No renderer: customAssociatesEventsRenderPortal,dk.atira.pure.api.shared.model.researchoutput.WorkingPaper

Externe IDs

ORCID /0000-0003-3358-1545/work/142658530



  • cond-mat.mtrl-sci