Microstructure Characterization and Reconstruction in Python: MCRpy
Source abstract
Abstract
Abstract 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 the 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 MCRpyas an easy-to-use, extensible and flexible open-source MCR software platform.MCRpycan 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, arbitrary descriptors can be used for characterization and arbitrary loss functions combining arbitrary descriptors can be minimized using arbitrary optimizers for reconstructing random heterogeneous media. With stochastic optimizers, this leads to variations of the well-known Yeong–Torquato algorithm. Furthermore,MCRpyfeatures automatic differentiation, enabling the utilization of gradient-based optimizers. In this work, after a brief introduction to the underlying concepts, the capabilities ofMCRpyare demonstrated by exemplarily applying it to typical MCR tasks. Finally, it is shown how to extendMCRpyby defining a new microstructure descriptor and readily using it for reconstruction without additional implementation effort.
Source: crossref · Quality: baseline
Research context
OpenAlex topics: Machine Learning in Materials Science · Electron and X-Ray Spectroscopy Techniques · X-ray Diffraction in Crystallography
SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.
References (49)
Show source-provided references
1. Chen W, Iyer A, Bostanabad R (2022) Data-centric design: a new approach to design of microstructural materials systems. Engineering. https://doi.org/10.1016/j.eng.2021.05.02210.1016/j.eng.2021.05.022 ↗
2. Bostanabad R, Zhang Y, Li X, Kearney T, Brinson LC, Apley DW, Liu WK, Chen W (2018) Computational microstructure characterization and reconstruction: review of the state-of-the-art techniques. Prog Mater Sci 95:1–41. https://doi.org/10.1016/j.pmatsci.2018.01.00510.1016/j.pmatsci.2018.01.005 ↗
3. Khatamsaz D, Molkeri A, Couperthwaite R, James J, Arróyave R, Srivastava A, Allaire D (2021) Adaptive active subspace-based efficient multifidelity materials design. Mater Des 209:110001. https://doi.org/10.1016/j.matdes.2021.11000110.1016/j.matdes.2021.110001 ↗
4. Seibert P, Raßloff A, Ambati M, Kästner M (2022) Descriptor-based reconstruction of three-dimensional microstructures through gradient-based optimization. Acta Mater 227:117667. https://doi.org/10.1016/j.actamat.2022.11766710.1016/j.actamat.2022.117667 ↗
5. Liu H, Yucel B, Wheeler D, Ganapathysubramanian B, Kalidindi SR, Wodo O (2022) How important is microstructural feature selection for data-driven structure-property mapping? MRS Commun. https://doi.org/10.1557/s43579-021-00147-410.1557/s43579-021-00147-4 ↗
6. Sonnenburg S, Braun ML, Ong CS, Bengio S, Bottou L, Holmes G, LeCun Y (2007) The need for open source software in machine learning. J Mach Learn Res, p. 25. http://jmlr.org/papers/v8/sonnenburg07a.html
7. de Pablo JJ, Jones B, Kovacs CL, Ozolins V, Ramirez AP (2014) The materials genome initiative, the interplay of experiment, theory and computation. Curr Opin Solid State Mater Sci 18(2):99–117. https://doi.org/10.1016/j.cossms.2014.02.00310.1016/j.cossms.2014.02.003 ↗
8. Nanomine: Ontology-enabled polymer nanocomposite open community data resource (2022). https://tw.rpi.edu/project/nanomine/
9. European center of excellence for novel materials discovery (NOMAD-CoE) (2021). https://nomad-lab.eu/
10. Ghiringhelli LM, Carbogno C, Levchenko S, Mohamed F, Lüders M, Oliveira M, Scheer M (2016) Towards a common format for computational materials science data. arXiv:1607.04738 pp. 1–16
11. Computational design and discovery of novel materials (NCCR MARVEL) (2021). https://www.nccr-marvel.ch/
12. Automated interactive infrastructure and database for computational science (2021). https://www.aiida.net/
13. Pizzi G, Cepellotti A, Sabatini R, Marzari N, Kozinsky B (2016) AiiDA: automated interactive infrastructure and database for computational science. Comput Mater Sci 111:218–230. https://doi.org/10.1016/j.commatsci.2015.09.01310.1016/j.commatsci.2015.09.013 ↗
14. Ong SP, Richards WD, Jain A, Hautier G, Kocher M, Cholia S, Gunter D, Chevrier VL, Persson KA, Ceder G (2013) Python materials genomics (pymatgen): a robust, open-source python library for materials analysis. Comput Mater Sci 68:314–319. https://doi.org/10.1016/j.commatsci.2012.10.02810.1016/j.commatsci.2012.10.028 ↗
15. Hayashi Y, Shiomi J, Morikawa J, Yoshida R (2022) RadonPy: automated physical property calculation using all-atom classical molecular dynamics simulations for polymer informatics. arXiv:2203.14090 p. 4210.1038/s41524-022-00906-4 ↗
16. Brough DB, Wheeler D, Kalidindi SR (2017) Materials knowledge systems in python–a data science framework for accelerated development of hierarchical materials. Int Mater Manuf Innov 6(1):36–53. https://doi.org/10.1007/s40192-017-0089-010.1007/s40192-017-0089-0 ↗
17. Fast T, Kalidindi SR (2011) Formulation and calibration of higher-order elastic localization relationships using the MKS approach. Acta Mater 59(11):4595–4605. https://doi.org/10.1016/j.actamat.2011.04.00510.1016/j.actamat.2011.04.005 ↗
18. Cimrman R (2014) SfePy - write your own FE application. Proc. of the 6th Eur. Conf. on Python in Science (Euroscipy 2013) pp. 69–69
19. Cimrman R, Lukeš V, Rohan E (2019) Multiscale finite element calculations in python using SfePy. Adv Comput Math 45(4):1897–1921. https://doi.org/10.1007/s10444-019-09666-010.1007/s10444-019-09666-0 ↗
20. Roters F, Diehl M, Shanthraj P, Eisenlohr P, Reuber C, Wong S, Maiti T, Ebrahimi A, Hochrainer T, Fabritius HO, Nikolov S, Friák M, Fujita N, Grilli N, Janssens K, Jia N, Kok P, Ma D, Meier F, Werner E, Stricker M, Weygand D, Raabe D (2019) DAMASK - the düsseldorf advanced material simulation kit for modeling multi-physics crystal plasticity, thermal, and damage phenomena from the single crystal up to the component scale. Comput Mater Sci 158:420–478. https://doi.org/10.1016/j.commatsci.2018.04.03010.1016/j.commatsci.2018.04.030 ↗
21. Keshav S, Fritzen F, Kabel M (2022) FFT-based homogenization at finite strains using composite boxels (ComBo). arXiv:2204.13624 [cs, math]10.1007/s00466-022-02232-4 ↗
22. Groeber MA, Jackson MA (2014) DREAM.3D: A digital representation environment for the analysis of microstructure in 3D. Int Mater Manuf Innov 3(1):56–72. https://doi.org/10.1186/2193-9772-3-510.1186/2193-9772-3-5 ↗
23. Azhari F, Davids W, Chen H, Ringer SP, Wallbrink C, Sterjovski Z, Crawford BR, Agius D, Wang CH, Schaffer G (2022) A comparison of statistically equivalent and realistic microstructural representative volume elements for crystal plasticity models. Int Mater Manuf Innov. https://doi.org/10.1007/s40192-022-00257-410.1007/s40192-022-00257-4 ↗
24. Yeong CLY, Torquato S (1998) Reconstructing random media. Phys Rev E 57(1):495–506. https://doi.org/10.1103/PhysRevE.57.49510.1103/PhysRevE.57.495 ↗
25. Jiao Y, Stillinger FH, Torquato S (2007) Modeling heterogeneous materials via two-point correlation functions: basic principles. Phys Rev E 76(3):031110. https://doi.org/10.1103/PhysRevE.76.03111010.1103/PhysRevE.76.031110 ↗
26. Seibert P, Ambati M, Raßloff A, Kästner M (2021) Reconstructing random heterogeneous media through differentiable optimization. Comput Mater Sci. https://doi.org/10.1016/j.commatsci.2021.11045510.1016/j.commatsci.2021.110455 ↗
27. Lu B, Torquato S (1992) Lineal-path function for random heterogeneous materials. Phys Rev A 45(2):922–929. https://doi.org/10.1103/PhysRevA.45.92210.1103/PhysRevA.45.922 ↗
28. Jiao Y, Stillinger FH, Torquato S (2009) A superior descriptor of random textures and its predictive capacity. Proceed Natl Acad Sci 106(42):17634–17639. https://doi.org/10.1073/pnas.090591910610.1073/pnas.0905919106 ↗
29. Chen PE, Xu W, Chawla N, Ren Y, Jiao Y (2019) Novel hierarchical correlation functions for quantitative representation of complex heterogeneous materials and microstructural evolution. SSRN Electron J. https://doi.org/10.2139/ssrn.339726910.2139/ssrn.3397269 ↗
30. Lubbers N, Lookman T, Barros K (2017) Inferring low-dimensional microstructure representations using convolutional neural networks. Phys Rev E 96:052111. https://doi.org/10.1103/PhysRevE.96.05211110.1103/PhysRevE.96.052111 ↗
31. Li X, Zhang Y, Zhao H, Burkhart C, Brinson LC, Chen W (2018) A transfer learning approach for microstructure reconstruction and structure-property predictions. Sci Rep 8(1):13461. https://doi.org/10.1038/s41598-018-31571-710.1038/s41598-018-31571-7 ↗
32. Bostanabad R (2020) Reconstruction of 3D microstructures from 2D images via transfer learning. Computer-Aided Des 128:102906. https://doi.org/10.1016/j.cad.2020.10290610.1016/j.cad.2020.102906 ↗
33. Bhaduri A, Gupta A, Olivier A, Graham-Brady L (2021) An efficient optimization based microstructure reconstruction approach with multiple loss functions. arXiv:2102.02407 [cond-mat]10.1016/j.commatsci.2021.110709 ↗
34. Piasecki R, Plastino A (2010) Entropic descriptor of a complex behaviour. Phys A: Stat Mech Appl 389(3):397–407. https://doi.org/10.1016/j.physa.2009.10.01310.1016/j.physa.2009.10.013 ↗
35. Simonyan K, Zisserman A (2015) Very deep convolutional networks for large-scale image recognition. CoRR abs/1409.1556
36. Byrd RH, Hansen SL, Nocedal J, Singer Y (2015) A stochastic quasi-newton method for large-scale optimization. arXiv:1401.7020 [cs, math, stat]10.1137/140954362 ↗
37. Cule D, Torquato S (1999) Generating random media from limited microstructural information via stochastic optimization. J Appl Phys 86(6):3428–3437. https://doi.org/10.1063/1.37122510.1063/1.371225 ↗
38. Nash SG (1984) Newton-type minimization via the lanczos method. SIAM J Numer Anal 21(4):770–788. https://doi.org/10.1137/072105210.1137/0721052 ↗
39. Kingma DP, Ba J (2017) Adam: A method for stochastic optimization. arXiv:1412.6980 [cs] pp. 1–15
40. Duchi J, Hazan E, Singer Y (2011) Adaptive subgradient methods for online learning and stochastic optimization. J Mach Learn Res 12(7):39
41. Zeiler MD (2012) ADADELTA: An adaptive learning rate method. arXiv:1212.5701 [cs]
42. Abadi M, Barham P, Chen J, Chen Z, Davis A, Dean J, Devin M, Ghemawat S, Irving G, Isard M, Kudlur M, Levenberg J, Monga R, Moore S, Murray DG, Steiner B, Tucker P, Vasudevan V, Warden P, Wicke M, Yu Y, Zheng X (2016) Tensorflow: A system for large-scale machine learning. In: Proceedings of the 12th USENIX conference on operating systems design and implementation, OSDI’16, p. 265-283. USENIX Association, USA
43. Cecen A, Yucel B, Kalidindi SR (2021) A generalized and modular framework for digital generation of composite microstructures. J Compos Sci 5(8):211. https://doi.org/10.3390/jcs508021110.3390/jcs5080211 ↗
44. Ahrens J, Geveci B, Law C (2005) Paraview: An end-user tool for large data visualization. The visualization handbook. Elsevier, p 717(8)10.1016/B978-012387582-2/50038-1 ↗
45. Raßloff A, Schulz P, Kühne R, Ambati M, Koch I, Zeuner AT, Gude M, Zimmermann M, Kästner M (2021) Accessing pore microstructure-property relationships for additively manufactured materials. GAMM-Mitt. https://doi.org/10.1002/gamm.20210001210.1002/gamm.202100012 ↗
46. Bresenham JE (1965) Algorithm for computer control of a digital plotter. IBM Syst J 4(1):2510.1147/sj.41.0025 ↗
47. Wu X (1991) An efficient antialiasing technique. Comput Gr 25(4):143–15210.1145/127719.122734 ↗
48. Bostanabad R, Chen W, Apley D (2016) Characterization and reconstruction of 3D stochastic microstructures via supervised learning. J Microsc 264(3):282–297. https://doi.org/10.1111/jmi.1244110.1111/jmi.12441 ↗
49. Kench S, Cooper SJ (2021) Generating 3D structures from a 2D slice with GAN-based dimensionality expansion. Nat Mach Intell 3:299–305. https://doi.org/10.1038/s42256-021-00322-110.1038/s42256-021-00322-1 ↗