diff --git a/joss.05668/10.21105.joss.05668.crossref.xml b/joss.05668/10.21105.joss.05668.crossref.xml new file mode 100644 index 0000000000..ee7f782518 --- /dev/null +++ b/joss.05668/10.21105.joss.05668.crossref.xml @@ -0,0 +1,1093 @@ + + + + 20240128T183301-bcf0088b50065590f13410e143371d159f5e578a + 20240128183301 + + JOSS Admin + admin@theoj.org + + The Open Journal + + + + + Journal of Open Source Software + JOSS + 2475-9066 + + 10.21105/joss + https://joss.theoj.org + + + + + 01 + 2024 + + + 9 + + 93 + + + + matscipy: materials science at the atomic scale with +Python + + + + Petr + Grigorev + https://orcid.org/0000-0002-6409-9092 + + + Lucas + Frérot + https://orcid.org/0000-0002-4138-1052 + + + Fraser + Birks + https://orcid.org/0009-0008-9117-0393 + + + Adrien + Gola + https://orcid.org/0000-0002-5102-1931 + + + Jacek + Golebiowski + https://orcid.org/0000-0001-8053-8318 + + + Jan + Grießer + https://orcid.org/0000-0003-2149-6730 + + + Johannes L. + Hörmann + https://orcid.org/0000-0001-5867-695X + + + Andreas + Klemenz + https://orcid.org/0000-0001-5677-5639 + + + Gianpietro + Moras + https://orcid.org/0000-0002-4623-2881 + + + Wolfram G. + Nöhring + https://orcid.org/0000-0003-4203-755X + + + Jonas A. + Oldenstaedt + https://orcid.org/0000-0002-7475-3019 + + + Punit + Patel + + + Thomas + Reichenbach + https://orcid.org/0000-0001-7477-6248 + + + Thomas + Rocke + https://orcid.org/0000-0002-4612-9112 + + + Lakshmi + Shenoy + https://orcid.org/0000-0001-5760-3345 + + + Michael + Walter + https://orcid.org/0000-0001-6679-2491 + + + Simon + Wengert + https://orcid.org/0000-0002-8008-1482 + + + Lei + Zhang + https://orcid.org/0000-0003-4414-7111 + + + James R. + Kermode + https://orcid.org/0000-0001-6755-6271 + + + Lars + Pastewka + https://orcid.org/0000-0001-8351-7336 + + + + 01 + 28 + 2024 + + + 5668 + + + 10.21105/joss.05668 + + + http://creativecommons.org/licenses/by/4.0/ + http://creativecommons.org/licenses/by/4.0/ + http://creativecommons.org/licenses/by/4.0/ + + + + Software archive + 10.5281/zenodo.10564956 + + + GitHub review issue + https://github.com/openjournals/joss-reviews/issues/5668 + + + + 10.21105/joss.05668 + https://joss.theoj.org/papers/10.21105/joss.05668 + + + https://joss.theoj.org/papers/10.21105/joss.05668.pdf + + + + + + The atomic simulation environment - a Python +library for working with atoms + Larsen + J. Phys. Condens. Matter + 27 + 29 + 10.1088/1361-648x/aa680e + 2017 + Larsen, A. H., Mortensen, J. J., +Blomqvist, J., Castelli, I. E., Christensen, R., Dułak, M., Friis, J., +Groves, M. N., Hammer, B., Hargus, C., Hermes, E. D., Jennings, P. C., +Jensen, P. B., Kermode, J., Kitchin, J. R., Kolsbjerg, E. L., Kubal, J., +Kaasbjerg, K., Lysgaard, S., … Jacobsen, K. W. (2017). The atomic +simulation environment - a Python library for working with atoms. J. +Phys. Condens. Matter, 29(27), 273002. +https://doi.org/10.1088/1361-648x/aa680e + + + Hale + 2022 + Hale, L. (2022). +https://github.com/usnistgov/atomman + + + Visualization and analysis of atomistic +simulation data with OVITO–the open visualization tool + Stukowski + Modell. Simul. Mater. Sci. +Eng. + 1 + 18 + 10.1088/0965-0393/18/1/015012 + 0965-0393 + 2009 + Stukowski, A. (2009). Visualization +and analysis of atomistic simulation data with OVITO–the open +visualization tool. Modell. Simul. Mater. Sci. Eng., 18(1), 015012. +https://doi.org/10.1088/0965-0393/18/1/015012 + + + Hybrid atomistic simulation methods for +materials systems + Bernstein + Rep. Prog. Phys. + 2 + 72 + 10.1088/0034-4885/72/2/026501 + 0034-4885 + 2009 + Bernstein, N., Kermode, J. R., & +Csányi, G. (2009). Hybrid atomistic simulation methods for materials +systems. Rep. Prog. Phys., 72(2), 026501. +https://doi.org/10.1088/0034-4885/72/2/026501 + + + Fast and accurate uncertainty estimation in +chemical machine learning + Musil + J. Chem. Theory Comput. + 2 + 15 + 10.1021/acs.jctc.8b00959 + 1549-9618 + 2019 + Musil, F., Willatt, M. J., Langovoy, +M. A., & Ceriotti, M. (2019). Fast and accurate uncertainty +estimation in chemical machine learning. J. Chem. Theory Comput., 15(2), +906–915. +https://doi.org/10.1021/acs.jctc.8b00959 + + + Multiscale simulations of critical +interfacial failure in carbon nanotube-polymer +composites + Gołębiowski + J. Chem. Phys. + 22 + 149 + 10.1063/1.5035508 + 0021-9606 + 2018 + Gołębiowski, J. R., Kermode, J. R., +Mostofi, A. A., & Haynes, P. D. (2018). Multiscale simulations of +critical interfacial failure in carbon nanotube-polymer composites. J. +Chem. Phys., 149(22), 224102. +https://doi.org/10.1063/1.5035508 + + + Atomistic QM/MM simulations of the strength +of covalent interfaces in carbon nanotube-polymer +composites + Gołębiowski + Phys. Chem. Chem. Phys. + 21 + 22 + 10.1039/d0cp01841d + 1463-9076 + 2020 + Gołębiowski, J. R., Kermode, J. R., +Haynes, P. D., & Mostofi, A. A. (2020). Atomistic QM/MM simulations +of the strength of covalent interfaces in carbon nanotube-polymer +composites. Phys. Chem. Chem. Phys., 22(21), 12007–12014. +https://doi.org/10.1039/d0cp01841d + + + Hybrid quantum/classical study of +hydrogen-decorated screw dislocations in tungsten: Ultrafast pipe +diffusion, core reconstruction, and effects on glide +mechanism + Grigorev + Phys. Rev. Mater. + 2 + 4 + 10.1103/PhysRevMaterials.4.023601 + 2020 + Grigorev, P., Swinburne, T. D., & +Kermode, J. R. (2020). Hybrid quantum/classical study of +hydrogen-decorated screw dislocations in tungsten: Ultrafast pipe +diffusion, core reconstruction, and effects on glide mechanism. Phys. +Rev. Mater., 4(2), 023601. +https://doi.org/10.1103/PhysRevMaterials.4.023601 + + + Calculation of dislocation binding to +helium-vacancy defects in tungsten using hybrid ab initio-machine +learning methods + Grigorev + Acta Mater. + 247 + 10.1016/j.actamat.2023.118734 + 1359-6454 + 2023 + Grigorev, P., Goryaeva, A. M., +Marinica, M.-C., Kermode, J. R., & Swinburne, T. D. (2023). +Calculation of dislocation binding to helium-vacancy defects in tungsten +using hybrid ab initio-machine learning methods. Acta Mater., 247, +118734. +https://doi.org/10.1016/j.actamat.2023.118734 + + + Atomistic insights into the running-in, +lubrication, and failure of hydrogenated diamond-like carbon +coatings + Pastewka + Tribol. Lett. + 39 + 10.1007/s11249-009-9566-8 + 2010 + Pastewka, L., Moser, S., & +Moseler, M. (2010). Atomistic insights into the running-in, lubrication, +and failure of hydrogenated diamond-like carbon coatings. Tribol. Lett., +39, 49–61. +https://doi.org/10.1007/s11249-009-9566-8 + + + Computer simulation of local order in +condensed phases of silicon + Stillinger + Phys. Rev. B + 8 + 31 + 10.1103/PhysRevB.31.5262 + 1985 + Stillinger, F. H., & Weber, T. A. +(1985). Computer simulation of local order in condensed phases of +silicon. Phys. Rev. B, 31(8), 5262. +https://doi.org/10.1103/PhysRevB.31.5262 + + + Development of bond-order potentials that can +reproduce the elastic constants and melting point of silicon for +classical molecular dynamics simulation + Kumagai + Comp. Mater. Sci. + 2 + 39 + 10.1016/j.commatsci.2006.07.013 + 2007 + Kumagai, T., Izumi, S., Hara, S., +& Sakai, S. (2007). Development of bond-order potentials that can +reproduce the elastic constants and melting point of silicon for +classical molecular dynamics simulation. Comp. Mater. Sci., 39(2), +457–464. +https://doi.org/10.1016/j.commatsci.2006.07.013 + + + Modeling solid-state chemistry: Interatomic +potentials for multicomponent systems + Tersoff + Phys. Rev. B + 8 + 39 + 10.1103/PhysRevB.39.5566 + 1989 + Tersoff, J. (1989). Modeling +solid-state chemistry: Interatomic potentials for multicomponent +systems. Phys. Rev. B, 39(8), 5566(R). +https://doi.org/10.1103/PhysRevB.39.5566 + + + Empirical potential for hydrocarbons for use +in simulating chemical vapor deposition of diamond films + Brenner + Phys. Rev. B + 15 + 42 + 10.1103/PhysRevB.42.9458 + 1990 + Brenner, D. W. (1990). Empirical +potential for hydrocarbons for use in simulating chemical vapor +deposition of diamond films. Phys. Rev. B, 42(15), 9458–9471. +https://doi.org/10.1103/PhysRevB.42.9458 + + + Force fields for silicas and +aluminophosphates based on ab initio calculations + Van Beest + Phys. Rev. Lett. + 16 + 64 + 10.1103/PhysRevLett.64.1955 + 1990 + Van Beest, B., Kramer, G. J., & +Van Santen, R. (1990). Force fields for silicas and aluminophosphates +based on ab initio calculations. Phys. Rev. Lett., 64(16), 1955. +https://doi.org/10.1103/PhysRevLett.64.1955 + + + Cohesion + Lennard-Jones + Proc. Phys. Soc. + 5 + 43 + 10.1088/0959-5309/43/5/301 + 1931 + Lennard-Jones, J. E. (1931). +Cohesion. Proc. Phys. Soc., 43(5), 461–482. +https://doi.org/10.1088/0959-5309/43/5/301 + + + On cracks in rectilinearly anisotropic +bodies + Sih + Int. J. Fract. Mech. + 3 + 1 + 10.1007/BF00186854 + 0020-7268 + 1965 + Sih, G. C., Paris, P. C., & +Irwin, G. R. (1965). On cracks in rectilinearly anisotropic bodies. Int. +J. Fract. Mech., 1(3), 189–203. +https://doi.org/10.1007/BF00186854 + + + The influence of the interatomic force law +and of kinks on the propagation of brittle cracks + Sinclair + Philos. Mag. + 3 + 31 + 10.1080/14786437508226544 + 1478-6435 + 1975 + Sinclair, J. E. (1975). The influence +of the interatomic force law and of kinks on the propagation of brittle +cracks. Philos. Mag., 31(3), 647–671. +https://doi.org/10.1080/14786437508226544 + + + Low speed crack propagation via kink +formation and advance on the silicon (110) cleavage +plane + Kermode + Phys. Rev. Lett. + 13 + 115 + 10.1103/PhysRevLett.115.135501 + 0031-9007 + 2015 + Kermode, J. R., Gleizer, A., Kovel, +G., Pastewka, L., Csányi, G., Sherman, D., & De Vita, A. (2015). Low +speed crack propagation via kink formation and advance on the silicon +(110) cleavage plane. Phys. Rev. Lett., 115(13), 135501. +https://doi.org/10.1103/PhysRevLett.115.135501 + + + Numerical-continuation-enhanced flexible +boundary condition scheme applied to mode-I and mode-III +fracture + Buze + Phys. Rev. E + 3 + 103 + 10.1103/PhysRevE.103.033002 + 2021 + Buze, M., & Kermode, J. R. +(2021). Numerical-continuation-enhanced flexible boundary condition +scheme applied to mode-I and mode-III fracture. Phys. Rev. E, 103(3), +033002. +https://doi.org/10.1103/PhysRevE.103.033002 + + + PACKMOL: A package for building initial +configurations for molecular dynamics simulations + Martinez + J. Comput. Chem. + 13 + 30 + 10.1002/jcc.21224 + 1096-987X + 2009 + Martinez, L., Andrade, R., Birgin, E. +G., & Martínez, J. M. (2009). PACKMOL: A package for building +initial configurations for molecular dynamics simulations. J. Comput. +Chem., 30(13), 2157–2164. +https://doi.org/10.1002/jcc.21224 + + + Analysis and simulation of semiconductor +devices + Selberherr + 10.1007/978-3-7091-8752-4 + 1984 + Selberherr, S. (1984). Analysis and +simulation of semiconductor devices. Springer Science & Business +Media. https://doi.org/10.1007/978-3-7091-8752-4 + + + Molecular simulations of electrotunable +lubrication: Viscosity and wall slip in aqueous +electrolytes + Seidl + Tribol. Lett. + 69 + 10.1007/s11249-020-01395-6 + 1573-2711 + 2021 + Seidl, C., Hörmann, J. L., & +Pastewka, L. (2021). Molecular simulations of electrotunable +lubrication: Viscosity and wall slip in aqueous electrolytes. Tribol. +Lett., 69, 22. +https://doi.org/10.1007/s11249-020-01395-6 + + + Current-voltage relations for electrochemical +thin films + Bazant + SIAM J. Appl. Math. + 5 + 65 + 10.1137/040609938 + 2006 + Bazant, M. Z., Chu, K. T., & +Bayly, B. J. (2006). Current-voltage relations for electrochemical thin +films. SIAM J. Appl. Math., 65(5), 1463–1484. +https://doi.org/10.1137/040609938 + + + Development and testing of the OPLS all-atom +force field on conformational energetics and properties of organic +liquids + Jorgensen + J. Am. Chem. Soc. + 45 + 118 + 10.1021/ja9621760 + 1996 + Jorgensen, W. L., Maxwell, D. S., +& Tirado-Rives, J. (1996). Development and testing of the OPLS +all-atom force field on conformational energetics and properties of +organic liquids. J. Am. Chem. Soc., 118(45), 11225–11236. +https://doi.org/10.1021/ja9621760 + + + LAMMPS - a flexible simulation tool for +particle-based materials modeling at the atomic, meso, and continuum +scale + Thompson + Comp. Phys. Commun. + 271 + 10.1016/j.cpc.2021.108171 + 2022 + Thompson, A. P., Aktulga, H. M., +Berger, R., Bolintineanu, D. S., Brown, W. M., Crozier, P. S., in ’t +Veld, P. J., Kohlmeyer, A., Moore, S. G., Nguyen, T. D., Shan, R., +Stevens, M. J., Tranchida, J., Trott, C., & Plimpton, S. J. (2022). +LAMMPS - a flexible simulation tool for particle-based materials +modeling at the atomic, meso, and continuum scale. Comp. Phys. Commun., +271, 108171. +https://doi.org/10.1016/j.cpc.2021.108171 + + + Fluorine-terminated diamond surfaces as dense +dipole lattices: The electrostatic origin of polar +hydrophobicity + Mayrhofer + J. Am. Chem. Soc. + 12 + 138 + 10.1021/jacs.5b04073 + 2016 + Mayrhofer, L., Moras, G., Mulakaluri, +N., Rajagopalan, S., Stevens, P. A., & Moseler, M. (2016). +Fluorine-terminated diamond surfaces as dense dipole lattices: The +electrostatic origin of polar hydrophobicity. J. Am. Chem. Soc., +138(12), 4018–4028. +https://doi.org/10.1021/jacs.5b04073 + + + Nonempirical free volume viscosity model for +alkane lubricants under severe pressures + Falk + Phys. Rev. Lett. + 10 + 124 + 10.1103/PhysRevLett.124.105501 + 2020 + Falk, K., Savio, D., & Moseler, +M. (2020). Nonempirical free volume viscosity model for alkane +lubricants under severe pressures. Phys. Rev. Lett., 124(10), 105501. +https://doi.org/10.1103/PhysRevLett.124.105501 + + + Steric effects control dry friction of h- and +f-terminated carbon surfaces + Reichenbach + ACS Appl. Mater. Interf. + 7 + 12 + 10.1021/acsami.9b18019 + 2020 + Reichenbach, T., Mayrhofer, L., +Kuwahara, T., Moseler, M., & Moras, G. (2020). Steric effects +control dry friction of h- and f-terminated carbon surfaces. ACS Appl. +Mater. Interf., 12(7), 8805–8816. +https://doi.org/10.1021/acsami.9b18019 + + + A combined experimental and atomistic +investigation of PTFE double transfer film formation and lubrication in +rolling point contacts + Goeldel + Tribol. Lett. + 69 + 10.1007/s11249-021-01508-9 + 2021 + Goeldel, S. von, Reichenbach, T., +Konig, F., Mayrhofer, L., Moras, G., Jacobs, G., & Moseler, M. +(2021). A combined experimental and atomistic investigation of PTFE +double transfer film formation and lubrication in rolling point +contacts. Tribol. Lett., 69, 136. +https://doi.org/10.1007/s11249-021-01508-9 + + + Relating dry friction to interdigitation of +surface passivation species: A molecular dynamics study on amorphous +carbon + Falk + Materials + 9 + 15 + 10.3390/ma15093247 + 2022 + Falk, K., Reichenbach, T., Gkagkas, +K., Moseler, M., & Moras, G. (2022). Relating dry friction to +interdigitation of surface passivation species: A molecular dynamics +study on amorphous carbon. Materials, 15(9), 3247. +https://doi.org/10.3390/ma15093247 + + + Automated solution of differential equations +by the finite element method + Logg + 10.1007/978-3-642-23099-8 + 978-3-642-23098-1 + 2012 + Logg, A., Mardal, K.-A., Wells, G. +N., & others. (2012). Automated solution of differential equations +by the finite element method (A. Logg, K.-A. Mardal, & G. N. Wells, +Eds.). Springer. +https://doi.org/10.1007/978-3-642-23099-8 + + + Yielding under compression and the +polyamorphic transition in silicon + Grießer + Phys. Rev. Mater. + 5 + 7 + 10.1103/PhysRevMaterials.7.055601 + 2023 + Grießer, J., Moras, G., & +Pastewka, L. (2023). Yielding under compression and the polyamorphic +transition in silicon. Phys. Rev. Mater., 7(5), 055601. +https://doi.org/10.1103/PhysRevMaterials.7.055601 + + + Analytic elastic constants in molecular +calculations: Finite strain, non-affine displacements, and many-body +interatomic potentials + Grießer + Phys. Rev. Mater. + 7 + 7 + 10.1103/PhysRevMaterials.7.073603 + 2023 + Grießer, J., Frérot, L., Oldenstaedt, +J. A., Müser, M. H., & Pastewka, L. (2023). Analytic elastic +constants in molecular calculations: Finite strain, non-affine +displacements, and many-body interatomic potentials. Phys. Rev. Mater., +7(7), 073603. +https://doi.org/10.1103/PhysRevMaterials.7.073603 + + + A unified framework and performance benchmark +of fourteen multiscale atomistic/continuum coupling +methods + Miller + Modell. Simul. Mater. Sci. +Eng. + 5 + 17 + 10.1088/0965-0393/17/5/053001 + 2009 + Miller, R. E., & Tadmor, E. B. +(2009). A unified framework and performance benchmark of fourteen +multiscale atomistic/continuum coupling methods. Modell. Simul. Mater. +Sci. Eng., 17(5), 053001. +https://doi.org/10.1088/0965-0393/17/5/053001 + + + The coupled atomistic/discrete-dislocation +method in 3d part I: Concept and algorithms + Anciaux + J. Mech. Phys. Solids + 118 + 10.1016/j.jmps.2018.05.004 + 2018 + Anciaux, G., Junge, T., Hodapp, M., +Cho, J., Molinari, J.-F., & Curtin, W. A. (2018). The coupled +atomistic/discrete-dislocation method in 3d part I: Concept and +algorithms. J. Mech. Phys. Solids, 118, 152–171. +https://doi.org/10.1016/j.jmps.2018.05.004 + + + Simulation multi-échelles des solides par une +approche couplée dynamique moléculaire/éléments finis. De la +modélisation à la simulation haute performance. + Anciaux + 2007 + Anciaux, G. (2007). Simulation +multi-échelles des solides par une approche couplée dynamique +moléculaire/éléments finis. De la modélisation à la simulation haute +performance. [Theses, Université Sciences et Technologies - Bordeaux I]. +https://theses.hal.science/tel-00263816 + + + Practical green’s function approach to the +simulation of elastic semi-infinite solids + Campañá + Phys. Rev. B + 7 + 74 + 10.1103/PhysRevB.74.075420 + 2006 + Campañá, C., & Müser, M. H. +(2006). Practical green’s function approach to the simulation of elastic +semi-infinite solids. Phys. Rev. B, 74(7), 075420. +https://doi.org/10.1103/PhysRevB.74.075420 + + + Seamless elastic boundaries for atomistic +calculations + Pastewka + Phys. Rev. B + 7 + 86 + 10.1103/PhysRevB.86.075459 + 2012 + Pastewka, L., Sharp, T. A., & +Robbins, M. O. (2012). Seamless elastic boundaries for atomistic +calculations. Phys. Rev. B, 86(7), 075459. +https://doi.org/10.1103/PhysRevB.86.075459 + + + Dynamics of viscoplastic deformation in +amorphous solids + Falk + Phys. Rev. E + 6 + 57 + 10.1103/PhysRevE.57.7192 + 1998 + Falk, M. L., & Langer, J. S. +(1998). Dynamics of viscoplastic deformation in amorphous solids. Phys. +Rev. E, 57(6), 7192–7205. +https://doi.org/10.1103/PhysRevE.57.7192 + + + Correlations of non-affine displacements in +metallic glasses through the yield transition + Jana + J. Phys. Mater. + 4 + 2 + 10.1088/2515-7639/ab36ed + 2019 + Jana, R., & Pastewka, L. (2019). +Correlations of non-affine displacements in metallic glasses through the +yield transition. J. Phys. Mater., 2(4), 045006. +https://doi.org/10.1088/2515-7639/ab36ed + + + Surface flaws control strain localization in +the deformation of Cu|Au nanolaminate pillars + Gola + MRS Commun. + 3 + 9 + 10.1557/mrc.2019.93 + 2019 + Gola, A., Zhang, G.-P., Pastewka, L., +& Schwaiger, R. (2019). Surface flaws control strain localization in +the deformation of Cu|Au nanolaminate pillars. MRS Commun., 9(3), +1067–1071. https://doi.org/10.1557/mrc.2019.93 + + + Pattern formation during deformation of +metallic nanolaminates + Gola + Phys. Rev. Mater. + 1 + 4 + 10.1103/PhysRevMaterials.4.013603 + 2020 + Gola, A., Schwaiger, R., Gumbsch, P., +& Pastewka, L. (2020). Pattern formation during deformation of +metallic nanolaminates. Phys. Rev. Mater., 4(1), 013603. +https://doi.org/10.1103/PhysRevMaterials.4.013603 + + + Computation of ring statistics for network +models of solids + Franzblau + Phys. Rev. B + 10 + 44 + 10.1103/PhysRevB.44.4925 + 1991 + Franzblau, D. S. (1991). Computation +of ring statistics for network models of solids. Phys. Rev. B, 44(10), +4925–4930. +https://doi.org/10.1103/PhysRevB.44.4925 + + + SPARSKIT: A basic tool kit for sparse matrix +computations + Saad + 1990 + Saad, Y. (1990). SPARSKIT: A basic +tool kit for sparse matrix computations (NAS 1.26:185876). +ntrs.nasa.gov. + + + Describing bond-breaking processes by +reactive potentials: Importance of an environment-dependent interaction +range + Pastewka + Phys. Rev. B + 16 + 78 + 10.1103/PhysRevB.78.161402 + 2008 + Pastewka, L., Pou, P., Pérez, R., +Gumbsch, P., & Moseler, M. (2008). Describing bond-breaking +processes by reactive potentials: Importance of an environment-dependent +interaction range. Phys. Rev. B, 78(16), 161402(R). +https://doi.org/10.1103/PhysRevB.78.161402 + + + Interatomic potentials: Achievements and +challenges + Müser + Adv. Phys. X + 1 + 8 + 10.1080/23746149.2022.2093129 + 2023 + Müser, M. H., Sukhomlinov, S. V., +& Pastewka, L. (2023). Interatomic potentials: Achievements and +challenges. Adv. Phys. X, 8(1), 2093129. +https://doi.org/10.1080/23746149.2022.2093129 + + + MACE: Higher order equivariant message +passing neural networks for fast and accurate force +fields + Batatia + Advances in neural information processing +systems + 2022 + Batatia, I., Kovacs, D. P., Simm, G. +N. C., Ortner, C., & Csanyi, G. (2022). MACE: Higher order +equivariant message passing neural networks for fast and accurate force +fields. In A. H. Oh, A. Agarwal, D. Belgrave, & K. Cho (Eds.), +Advances in neural information processing systems. +https://openreview.net/forum?id=YPpSngE-ZU + + + The design space of E(3)-equivariant +atom-centered interatomic potentials + Batatia + 10.48550/arXiv.2205.06643 + 2022 + Batatia, I., Batzner, S., Kovács, D. +P., Musaelian, A., Simm, G. N. C., Drautz, R., Ortner, C., Kozinsky, B., +& Csányi, G. (2022). The design space of E(3)-equivariant +atom-centered interatomic potentials (No. arXiv:2205.06643). +https://doi.org/10.48550/arXiv.2205.06643 + + + Activation and mechanochemical breaking of +C−C bonds initiate wear of diamond (110) surfaces in contact with +silica + Peguiron + Carbon + 98 + 10.1016/j.carbon.2015.10.098 + 2016 + Peguiron, A., Moras, G., Walter, M., +Uetsuka, H., Pastewka, L., & Moseler, M. (2016). Activation and +mechanochemical breaking of C−C bonds initiate wear of diamond (110) +surfaces in contact with silica. Carbon, 98, 474–483. +https://doi.org/10.1016/j.carbon.2015.10.098 + + + Shear melting of silicon and diamond and the +disappearance of the polyamorphic transition under shear + Moras + Phys. Rev. Mater. + 8 + 2 + 10.1103/PhysRevMaterials.2.083601 + 2018 + Moras, G., Klemenz, A., Reichenbach, +T., Gola, A., Uetsuka, H., Moseler, M., & Pastewka, L. (2018). Shear +melting of silicon and diamond and the disappearance of the polyamorphic +transition under shear. Phys. Rev. Mater., 2(8), 083601. +https://doi.org/10.1103/PhysRevMaterials.2.083601 + + + Solid-phase silicon homoepitaxy via +shear-induced amorphization and recrystallization + Reichenbach + Phys. Rev. Lett. + 12 + 127 + 10.1103/PhysRevLett.127.126101 + 2021 + Reichenbach, T., Moras, G., Pastewka, +L., & Moseler, M. (2021). Solid-phase silicon homoepitaxy via +shear-induced amorphization and recrystallization. Phys. Rev. Lett., +127(12), 126101. +https://doi.org/10.1103/PhysRevLett.127.126101 + + + Formation and oxidation of linear carbon +chains and their role in the wear of carbon materials + Moras + Tribol. Lett. + 44 + 10.1007/s11249-011-9864-9 + 2011 + Moras, G., Pastewka, L., Gumbsch, P., +& Moseler, M. (2011). Formation and oxidation of linear carbon +chains and their role in the wear of carbon materials. Tribol. Lett., +44, 355. +https://doi.org/10.1007/s11249-011-9864-9 + + + Anisotropic mechanical amorphization drives +wear in diamond + Pastewka + Nat. Mater. + 1 + 10 + 10.1038/nmat2902 + 2011 + Pastewka, L., Moser, S., Gumbsch, P., +& Moseler, M. (2011). Anisotropic mechanical amorphization drives +wear in diamond. Nat. Mater., 10(1), 34–38. +https://doi.org/10.1038/nmat2902 + + + Array programming with NumPy + Harris + Nature + 7825 + 585 + 10.1038/s41586-020-2649-2 + 2020 + Harris, C. R., Millman, K. J., Walt, +S. J. van der, Gommers, R., Virtanen, P., Cournapeau, D., Wieser, E., +Taylor, J., Berg, S., Smith, N. J., Kern, R., Picus, M., Hoyer, S., +Kerkwijk, M. H. van, Brett, M., Haldane, A., Rı́o, J. F. del, Wiebe, M., +Peterson, P., … Oliphant, T. E. (2020). Array programming with NumPy. +Nature, 585(7825), 357–362. +https://doi.org/10.1038/s41586-020-2649-2 + + + SciPy 1.0: Fundamental algorithms for +scientific computing in Python + Virtanen + Nat. Methods + 3 + 17 + 10.1038/s41592-019-0686-2 + 2020 + Virtanen, P., Gommers, R., Oliphant, +T. E., Haberland, M., Reddy, T., Cournapeau, D., Burovski, E., Peterson, +P., Weckesser, W., Bright, J., Walt, S. J. van der, Brett, M., Wilson, +J., Millman, K. J., Mayorov, N., Nelson, A. R. J., Jones, E., Kern, R., +Larson, E., … Vázquez-Baeza, Y. (2020). SciPy 1.0: Fundamental +algorithms for scientific computing in Python. Nat. Methods, 17(3), +261–272. +https://doi.org/10.1038/s41592-019-0686-2 + + + Atomsk: A tool for manipulating and +converting atomic data files + Hirel + Comput. Phys. Commun. + 197 + 10.1016/j.cpc.2015.07.012 + 2015 + Hirel, P. (2015). Atomsk: A tool for +manipulating and converting atomic data files. Comput. Phys. Commun., +197, 212–219. +https://doi.org/10.1016/j.cpc.2015.07.012 + + + Embedded-atom method: Derivation and +application to impurities, surfaces, and other defects in +metals + Daw + Phys. Rev. B + 12 + 29 + 10.1103/PhysRevB.29.6443 + 1984 + Daw, M. S., & Baskes, M. I. +(1984). Embedded-atom method: Derivation and application to impurities, +surfaces, and other defects in metals. Phys. Rev. B, 29(12), 6443–6453. +https://doi.org/10.1103/PhysRevB.29.6443 + + + preCICE v2: A sustainable and user-friendly +coupling library [version 2; peer review: 2 approved] + Chourdakis + Open Research Europe + 51 + 2 + 10.12688/openreseurope.14445.2 + 2022 + Chourdakis, G., Davis, K., Rodenberg, +B., Schulte, M., Simonis, F., Uekermann, B., Abrams, G., Bungartz, H., +Cheung Yau, L., Desai, I., Eder, K., Hertrich, R., Lindner, F., Rusch, +A., Sashko, D., Schneider, D., Totounferoush, A., Volland, D., Vollmer, +P., & Koseomur, O. (2022). preCICE v2: A sustainable and +user-friendly coupling library [version 2; peer review: 2 approved]. +Open Research Europe, 2(51). +https://doi.org/10.12688/openreseurope.14445.2 + + + Co-simulations of discrete and finite element +codes + Dehning + Meshfree methods for partial differential +equations VII + 10.1007/978-3-319-06898-5_4 + 978-3-319-06898-5 + 2015 + Dehning, C., Bierwisch, C., & +Kraft, T. (2015). Co-simulations of discrete and finite element codes. +In M. Griebel & M. A. Schweitzer (Eds.), Meshfree methods for +partial differential equations VII (pp. 61–79). Springer. +https://doi.org/10.1007/978-3-319-06898-5_4 + + + + + + diff --git a/joss.05668/10.21105.joss.05668.jats b/joss.05668/10.21105.joss.05668.jats new file mode 100644 index 0000000000..0525271b70 --- /dev/null +++ b/joss.05668/10.21105.joss.05668.jats @@ -0,0 +1,2021 @@ + + +
+ + + + +Journal of Open Source Software +JOSS + +2475-9066 + +Open Journals + + + +5668 +10.21105/joss.05668 + +matscipy: materials science at the atomic scale with +Python + + + +https://orcid.org/0000-0002-6409-9092 + +Grigorev +Petr + + + + +https://orcid.org/0000-0002-4138-1052 + +Frérot +Lucas + + + + +https://orcid.org/0009-0008-9117-0393 + +Birks +Fraser + + + + +https://orcid.org/0000-0002-5102-1931 + +Gola +Adrien + + + + + +https://orcid.org/0000-0001-8053-8318 + +Golebiowski +Jacek + + + + +https://orcid.org/0000-0003-2149-6730 + +Grießer +Jan + + + + +https://orcid.org/0000-0001-5867-695X + +Hörmann +Johannes L. + + + + + +https://orcid.org/0000-0001-5677-5639 + +Klemenz +Andreas + + + + +https://orcid.org/0000-0002-4623-2881 + +Moras +Gianpietro + + + + +https://orcid.org/0000-0003-4203-755X + +Nöhring +Wolfram G. + + + + +https://orcid.org/0000-0002-7475-3019 + +Oldenstaedt +Jonas A. + + + + + +Patel +Punit + + + + +https://orcid.org/0000-0001-7477-6248 + +Reichenbach +Thomas + + + + +https://orcid.org/0000-0002-4612-9112 + +Rocke +Thomas + + + + +https://orcid.org/0000-0001-5760-3345 + +Shenoy +Lakshmi + + + + +https://orcid.org/0000-0001-6679-2491 + +Walter +Michael + + + + +https://orcid.org/0000-0002-8008-1482 + +Wengert +Simon + + + + +https://orcid.org/0000-0003-4414-7111 + +Zhang +Lei + + + + +https://orcid.org/0000-0001-6755-6271 + +Kermode +James R. + + +* + + +https://orcid.org/0000-0001-8351-7336 + +Pastewka +Lars + + + +* + + + +Aix-Marseille Université, CNRS, CINaM UMR 7325, Campus de +Luminy, 13288 Marseille, France + + + + +Department of Microsystems Engineering, University of +Freiburg, 79110 Freiburg, Germany + + + + +Warwick Centre for Predictive Modelling, School of +Engineering, University of Warwick, Coventry CV4 7AL, United +Kingdom + + + + +Institute for Applied Materials, Karlsruhe Institute of +Technology, Engelbert-Arnold-Straße 4, 76131 Karlsruhe, +Germany + + + + +Fraunhofer IWM, MikroTribologie Centrum µTC, Wöhlerstraße +11, 79108 Freiburg, Germany + + + + +Department of Materials, Imperial College London, London +SW7 2AZ, United Kingdom + + + + +Fritz Haber Institute of the Max Planck Society, Faradayweg +4-6, 14195 Berlin, Germany + + + + +Cluster of Excellence livMatS, Freiburg Center for +Interactive Materials and Bioinspired Technologies, University of +Freiburg, Georges-Köhler-Allee 105, 79110 Freiburg, +Germany + + + + +Engineering and Technology Institute Groningen, Faculty of +Science and Engineering, University of Groningen, Nijenborgh 4, 9747 AG +Groningen, The Netherlands + + + + +* E-mail: +* E-mail: + + +7 +7 +2023 + +9 +93 +5668 + +Authors of papers retain copyright and release the +work under a Creative Commons Attribution 4.0 International License (CC +BY 4.0) +2022 +The article authors + +Authors of papers retain copyright and release the work under +a Creative Commons Attribution 4.0 International License (CC BY +4.0) + + + +Python +Material Science +Atomistic simulations + + + + + + Summary +

Behaviour of materials is governed by physical phenomena that occur + at an extreme range of length and time scales. Computational modelling + requires multiscale approaches. Simulation techniques operating on the + atomic scale serve as a foundation for such approaches, providing + necessary parameters for upper-scale models. The physical models + employed for atomic simulations can vary from electronic structure + calculations to empirical force fields. However, construction, + manipulation and analysis of atomic systems are independent of the + given physical model but dependent on the specific application. + matscipy implements such tools for applications + in materials science, including fracture, plasticity, tribology and + electrochemistry.

+
+ + Statement of need +

The Python package matscipy contains a set + of tools for researchers using atomic-scale models in materials + science. In atomic-scale modelling, the primary numerical object is a + discrete point in three-dimensional space that represents the position + of an individual atom. Simulations are often dynamical, where + configurations change over time and each atom carries a velocity. + Complexity emerges from the interactions of many atoms, and numerical + tools are required for generating initial atomic configurations and + for analysing output of such dynamical simulations, most commonly to + connect local geometric arrangements of atoms to physical processes. + An example, described in more detail below, is the detection of the + tip of a crack that moves through a solid body.

+

We never see individual atoms at macroscopic scales. To understand + the behaviour of everyday objects, atomic-scale information needs to + be transferred to the continuum scale. This is the primary objective + of multi-scale modelling. matscipy focuses on + atomic representations of materials, but implements tools for + connecting to continuum descriptions in mechanics and transport + theory. Each of the application domains described in the following + therefore relies on the computation of continuum fields, that is + realised through analytic or numerical solutions.

+

There is no other package that we are aware of, which fills the + particular niche of the application domains in the next section. The + package addresses the boundary between atomic-scale and continuum + modelling in materials with particular emphasis on plasticity, + fracture and tribology. The atomman atomistic + manipulation toolkit + (Hale, + 2022) and the atomsk package + (Hirel, + 2015) have some overlapping objectives but are restricted to a + narrower class of materials systems, principally point defects, + stacking faults and dislocations. We target interoperability with the + widely used Atomic Simulation Environment (ASE) + (Larsen + et al., 2017), which offers great flexibility by providing a + Python interface to tens of simulation codes implementing different + physical models. While ASE’s policy is to remain pure Python, we + augment some of ASE’s functionality with more efficient + implementations in C, such as the computation of the neighbour list. + Large scale molecular dynamics (MD) simulations are most efficiently + performed with optimised codes such as LAMMPS + (Thompson + et al., 2022), with matscipy’s main + contribution being to set up input structures and to post-process + output trajectories.

+

The central class in ASE is the Atoms class, + which is a container that stores atomic positions, velocities and + other properties. Calculators describe + relationships between atoms, and are used for example to compute + energies and forces, and can be attached to + Atoms objects. All other + matscipy functionality is implemented as + functions acting on Atoms objects. This is + comparable to the design of numpy + (Harris + et al., 2020) or scipy + (Virtanen + et al., 2020), that are collections of mathematical functions + operating on core array container objects. In + our experience, separating code into functions and containers lowers + the barrier to entry for new users and eases testability of the + underlying code base.

+

matscipy is a toolbox that enables + multi-scale coupling, but it is not a toolbox for actually carrying + out two-way coupled calculations. Its target is the construction of + atomic domains from continuum information and the extraction of + continuum fields from atomic structures. Other packages exist that + take care of the actual, two-way coupling. In contrast to + matscipy, those have a primary focus on + handling discretised continuum fields, typically in the form of + finite-element meshes, and interpolating nodal or element values + between atomic-scale and continuum descriptions. + matscipy itself has no provisions for handling + discrete continuum data, but does implement analytic expressions for + continuum fields.

+

Example implementations of two-way coupling codes are the + open-source code libmultiscale + (Guillaume + Anciaux, 2007; + G. + Anciaux et al., 2018) that explicitly targets + atomistic-continuum coupling, or the generic coupling libraries + preCICE + (Chourdakis + et al., 2022) or MpCCI + (Dehning + et al., 2015). Another two-way coupling code is + MultiBench + (Miller + & Tadmor, 2009), that was specifically designed for + benchmarking a wide range of two-way atomistic-continuum coupling + schemes. Furthermore, there are specialised multiscale coupling code, + such as Green’s function molecular dynamics + (GFMD) + (Campañá + & Müser, 2006; + Pastewka + et al., 2012) which targets two-way coupling in contact + mechanics and friction simulations. All of these packages have only + limited capabilities for constructing atomistic domains. + matscipy could be combined with these packages + for two-way coupled simulation of plasticity, fracture or frictional + processes.

+
+ + Application domains +

Within materials science, the package has different application + domains:

+ + +

Elasticity. Solids respond to small external loads + through a reversible elastic response. The strength of the + response is characterised by the elastic moduli. + matscipy.elasticity implements functions + for computing elastic moduli from small deformation that consider + potential symmetries of the underlying atomic system, in + particular for crystals. The implementation also includes + estimates of uncertainty on elastic moduli - either from a + least-squares error, or from a Bayesian treatment if stress + uncertainty is supplied. matscipy also + implements analytic calculation of elastic moduli for some + interatomic potentials, described in more detail below. The + computation of elastic moduli is a prerequisite for multi-scale + modelling of materials, as they are the most basic parameters of + continuum material models. matscipy was + used to study finite-pressure elastic constants and structural + stability in crystals + (Grießer, + Frérot, et al., 2023) and glasses + (Grießer, + Moras, et al., 2023).

+
+ +

Plasticity. For large loads, solids can respond + with irreversible deformation. One form of irreversibility is + plasticity, that is carried by extended defects, the dislocations, + in crystals. The module + matscipy.dislocation implements tools for + studying structure and movement of dislocations. Construction and + analysis of model atomic systems is implemented for compact and + dissociated screw, as well as edge dislocations in cubic crystals. + The implementation supports ideal straight as well as kinked + dislocations. Some of the dislocation functionality requires the + atomman and/or OVITO + packages as optional dependencies + (Hale, + 2022; + Stukowski, + 2009). The toolkit can be applied to a wide range of + single- and multi-component ordered systems, and could be used as + an initial starting point for modelling dislocations in systems + with chemical disorder. The module was employed in a study of + interaction of impurities with screw dislocations in tungsten + (Grigorev + et al., 2020, + 2023).

+
+ +

Fracture mechanics. Cracking is the process of + generating new surface area by splitting the material apart. The + module matscipy.fracture_mechanics provides + functionality for calculating continuum linear elastic + displacement fields near crack tips, including support for + anisotropy in the elastic response + (Sih + et al., 1965). The module also implements generation of + atomic structures that are deformed according to this near-tip + field. This functionality has been used to quantify lattice + trapping, which is the pinning of cracks due to the discreteness + of the atomic lattice, and to compare simulations with + experimental measurements of crack speeds in silicon + (Kermode + et al., 2015). There is also support for flexible boundary + conditions in fracture simulations using the formalism proposed by + Sinclair + (Sinclair, + 1975), where the finite atomistic domain is coupled to an + infinite elastic continuum. Finally, we provide an extension of + this approach to give a flexible boundary scheme that uses + numerical continuation to obtain full solution paths for cracks + (Buze + & Kermode, 2021).

+
+ +

Tribology. Tribology is the study of two + interfaces sliding relative to one another, as encountered in + frictional sliding or adhesion. Molecular dynamics simulations of + representative volume elements of tribological interfaces are + routinely used to gain insights into the atomistic mechanisms + underlying friction and wear. The module + matscipy.pressurecoupling provides tools to + perform such simulations under a constant normal load and sliding + velocity. It includes an implementation of the pressure coupling + algorithm described by Pastewka et al. + (2010). + By dynamically adjusting the distance between the two sliding + surfaces according to the local pressure, the algorithm ensures + mechanical boundary conditions that account for the inertia of the + bulk material which is not explicitly included in the simulation. + This algorithm was used to study friction + (Seidl + et al., 2021) and wear + (G. + Moras et al., 2011; + G. + Moras et al., 2018; + Pastewka + et al., 2011; + Peguiron + et al., 2016; + Reichenbach + et al., 2021).

+
+ +

Electrochemistry. Electrochemistry describes the + motion and spatial distribution of charged atoms and molecules + (ions) within an external electric field. Classical treatment of + charged systems leads to continuous fields that describe mean + concentration distributions, while true atomic systems consist of + discrete particles with fixed charges. Neither do continuum models + account for structured layering of ions in a polar solvent like + water nor do they describe finite size effects at high + concentrations such as densely packed monolayers. Sampling + discrete particle positions from smooth distributions may, + however, yield good initial configurations that accelerate + equilibration in atomistic calculations. The + matscipy.electrochemistry module provides + tools that statistically sample discrete coordinate sets from + continuum fields and apply steric corrections + (Martinez + et al., 2009) to avoid overlap of finite size species. To + generate continuum concentration distributions, the package also + contains a control-volume solver + (Selberherr, + 1984) for the one-dimensional Poisson–Nernst–Planck + equations + (Bazant + et al., 2006), as well as an interface to the + finite-element solver FEniCS + (Logg + et al., 2012).

+
+
+
+ + All-purpose atomic analysis tools +

As well as these domain-specific tools, + matscipy contains general utility functionality + which is widely applicable:

+ + +

Neighbour list. An efficient linear-scaling + neighbour list implemented in C delivers orders-of-magnitude + faster performance for large systems than the pure Python + implementation in ASE + (Larsen + et al., 2017), see + [fig:nl_time]. + The neighbour list is stored in a data structure comparable to + coordinate (COO) sparse matrix storage + format + (Saad, + 1990), where two arrays contain the indices of the + neighbouring atoms and further arrays store distance vectors, + absolute distances, and other properties associated with an atomic + pair. This allows compact code for evaluating properties that + depend on pairs, such as pair-distribution function or interatomic + potential energies and forces. Most of the tools described in the + following rely on this neighbour list format. The neighbour list + is becoming widely used for post-processing and structural + analysis of the trajectories resulting from molecular dynamics + simulations, and even to accelerate next-generation message + passing neural networks such as MACE + (Batatia, + Kovacs, et al., 2022; + Batatia, + Batzner, et al., 2022).

+
+
+ +

Execution time of the computation of the neighbour list + in ASE and matscipy. These results were + obtained on a single core of an Intel i7-1260P processor on the ASE + master branch (git hash + 52a8e783).

+ +
+ + +

Atomic strain. Continuum mechanics is formulated + in terms of strains, which characterises the fractional shape + changes of small volumes. Strains are typically only well-defined + if averaged over sufficiently large volumes, and extracting strain + fields from atomic-scale calculations is notoriously difficult. + matscipy implements calculations of strain + by observing changes in local atomic neighbourhoods across + trajectories. It fits a per-atom displacement gradient that + minimises the error in displacement between two configurations as + described by M. L. Falk & Langer + (1998). + The error resulting from this fit quantifies the non-affine + contribution of the overall displacement and is known as + + + Dmin2. + We used this analysis to quantify local strain in the deformation + of crystals + (Gola + et al., 2019, + 2020) + and glasses + (Jana + & Pastewka, 2019).

+
+ +

Radial, spatial and angular correlation functions. + Topological order in atomic-scale systems is often characterised + by statistical measures of the local atomic environment. The + simplest one is the pair-distribution or radial-distribution + function, that gives the probability + + + g2(r) + of finding an atom at distance + + r. + For three atoms, we can define a probability of finding a specific + angle, yielding the angular correlation functions. + matscipy has utility function for computing + these correlation functions to large distances, including the + correlation of arbitrary additional per-atom properties such as + per-atom strains.

+
+ +

Ring analysis. Topological order in network + glasses can be characterised by statistics of shortest-path rings + (Franzblau, + 1991). matscipy implements + calculations of these rings using a backtracking algorithm in C. + We regularly use matscipy to characterise + shortest-path rings in amorphous carbon + (Jana + & Pastewka, 2019; + Pastewka + et al., 2008).

+
+ +

Topology building for non-reactive MD simulations. + Non-reactive force fields for MD simulations consist of non-bonded + and bonded interaction terms + (Jorgensen + et al., 1996). The latter require an explicit specification + of the interatomic bonding topology, i.e. which atoms are involved + in bond, angle and dihedral interactions. + matscipy provides efficient tools to + generate this topology for an atomic structure based on matscipy’s + neighbour list, and then assign the relevant force field + parameters to each interaction term. Input and output routines for + reading and writing the corresponding control files for LAMMPS + (Thompson + et al., 2022) are also available. We used this + functionality in various studies on tribology, wetting and + nanoscale rheology + (K. + Falk et al., 2020, + 2022; + Goeldel + et al., 2021; + Mayrhofer + et al., 2016; + Reichenbach + et al., 2020)

+
+
+
+ + Interatomic potentials and other calculators +

Besides generating and analysing atomic-scale configurations, + matscipy implements specific interatomic + potentials + (Müser + et al., 2023). The goal here is not to provide the most + efficient implementation of computing interatomic forces. We rather + aim to provide simple implementations for testing new functional + forms, or testing new features such as the computation of derivatives + of second order.

+ + +

Interatomic potentials. The module + matscipy.calculators has implementations of + classical pair-potentials, Coulomb interactions, the embedded-atom + method (EAM) + (Daw + & Baskes, 1984) and other many-body potentials (e.g. + Stillinger + & Weber, 1985; + Tersoff, + 1989).

+
+ +

Second-order derivatives. The thermodynamic and + elastic properties of solid materials are closely connected to the + Hessian of the overall system, which contains the second + derivatives of the total energy with respect to position and + macroscopic strains. matscipy implements + analytic second-order potential derivatives for pair-potentials + (Lennard-Jones, + 1931), EAM potentials + (Daw + & Baskes, 1984), bond-order potentials + (Brenner, + 1990; + Kumagai + et al., 2007; + Tersoff, + 1989), cluster potentials + (Stillinger + & Weber, 1985) and electrostatic interaction + (Van + Beest et al., 1990). This is achieved through a generic + mathematical formulation of the manybody total energy + (Grießer, + Frérot, et al., 2023; + Müser + et al., 2023) in + matscipy.calculators.manybody. The module + matscipy.numerical additionally provides + routines for the numerical (finite-differences) evaluation of + these properties. These analytic second-order derivatives allow a + fast and accurate computation of the aforementioned properties in + crystals, polymers and amorphous solids, even for unstable + configurations where numerical methods are not applicable.

+
+ +

Quantum mechanics/molecular mechanics. The module + matscipy.calculators.mcfm implements a + generalised force-mixing potential + (Bernstein + et al., 2009) with support for multiple concurrent QM + clusters, named MultiClusterForceMixing (MCFM). It has been + applied to model failure of graphene-nanotube composites + (Gołębiowski + et al., 2018, + 2020).

+
+ +

Committee models. The module + matscipy.calculators.committee provides + support for committees of interatomic potentials with the same + functional form but differing parameters, in order to allow the + effect of the uncertainty in parameters on model predictions to be + estimated. This is typically used with machine learning + interatomic potentials (MLIPs). The implementation follows the + approach of + (Musil + et al., 2019) where the ensemble of models is generated by + training models on different subsets of a common overall training + database.

+
+
+
+ + Acknowledgements +

We thank Arnaud Allera, Manuel Aldegunde, Kristof Bal, James + Brixey, Alexander Held, Jan Jansen, Till Junge, Henry Lambert and + Zhilin Zheng for contributions and bug fixes. + matscipy was partially funded by the Deutsche + Forschungsgemeinschaft (projects 258153560, 390951807 and 461911253), + the European Research Council (ERC StG 757343), the European + Commission (NOMAD project grant agreement 951786 and ENTENTE project + grant agreement 900018), the Engineering and Physical Sciences + Research Council (grants EP/P002188/1, EP/R012474/1, EP/R043612/1 and + EP/S022848/1) and the Leverhulme Trust (grant RPG-2017-191).

+
+ + + + + + + LarsenAsk Hjorth + MortensenJens Jørgen + BlomqvistJakob + CastelliIvano E + ChristensenRune + DułakMarcin + FriisJesper + GrovesMichael N + HammerBjørk + HargusCory + HermesEric D + JenningsPaul C + JensenPeter Bjerre + KermodeJames + KitchinJohn R + KolsbjergEsben Leonhard + KubalJoseph + KaasbjergKristen + LysgaardSteen + MaronssonJón Bergmann + MaxsonTristan + OlsenThomas + PastewkaLars + PetersonAndrew + RostgaardCarsten + SchiøtzJakob + SchüttOle + StrangeMikkel + ThygesenKristian S + VeggeTejs + VilhelmsenLasse + WalterMichael + ZengZhenhua + JacobsenKarsten W + + The atomic simulation environment - a Python library for working with atoms + J. Phys. Condens. Matter + IOP Publishing + 201706 + 29 + 27 + https://doi.org/10.1088/1361-648x/aa680e + 10.1088/1361-648x/aa680e + 273002 + + + + + + + HaleLucas + + 2022 + https://github.com/usnistgov/atomman + + + + + + StukowskiAlexander + + Visualization and analysis of atomistic simulation data with OVITO–the open visualization tool + Modell. Simul. Mater. Sci. Eng. + IOP Publishing + 200912 + 18 + 1 + 0965-0393 + 10.1088/0965-0393/18/1/015012 + 015012 + + + + + + + BernsteinNoam + KermodeJ R + CsányiG + + Hybrid atomistic simulation methods for materials systems + Rep. Prog. Phys. + 2009 + 72 + 2 + 0034-4885 + 10.1088/0034-4885/72/2/026501 + 026501 + + + + + + + MusilFélix + WillattMichael J + LangovoyMikhail A + CeriottiMichele + + Fast and accurate uncertainty estimation in chemical machine learning + J. Chem. Theory Comput. + 201902 + 15 + 2 + 1549-9618 + 10.1021/acs.jctc.8b00959 + 30605342 + 906 + 915 + + + + + + GołębiowskiJacek R + KermodeJames R + MostofiArash A + HaynesPeter D + + Multiscale simulations of critical interfacial failure in carbon nanotube-polymer composites + J. Chem. Phys. + American Institute of Physics + 201812 + 149 + 22 + 0021-9606 + 10.1063/1.5035508 + 224102 + + + + + + + GołębiowskiJacek R + KermodeJames R + HaynesPeter D + MostofiArash A + + Atomistic QM/MM simulations of the strength of covalent interfaces in carbon nanotube-polymer composites + Phys. Chem. Chem. Phys. + 202005 + 22 + 21 + 1463-9076 + 10.1039/d0cp01841d + 32421117 + 12007 + 12014 + + + + + + GrigorevPetr + SwinburneThomas D. + KermodeJames R. + + Hybrid quantum/classical study of hydrogen-decorated screw dislocations in tungsten: Ultrafast pipe diffusion, core reconstruction, and effects on glide mechanism + Phys. Rev. Mater. + American Physical Society + 202002 + 4 + 2 + https://link.aps.org/doi/10.1103/PhysRevMaterials.4.023601 + 10.1103/PhysRevMaterials.4.023601 + 023601 + + + + + + + GrigorevPetr + GoryaevaAlexandra M. + MarinicaMihai-Cosmin + KermodeJames R. + SwinburneThomas D. + + Calculation of dislocation binding to helium-vacancy defects in tungsten using hybrid ab initio-machine learning methods + Acta Mater. + 2023 + 247 + 1359-6454 + 10.1016/j.actamat.2023.118734 + 118734 + + + + + + + PastewkaLars + MoserStefan + MoselerMichael + + Atomistic insights into the running-in, lubrication, and failure of hydrogenated diamond-like carbon coatings + Tribol. Lett. + Springer Science; Business Media LLC + 201001 + 39 + 10.1007/s11249-009-9566-8 + 49 + 61 + + + + + + StillingerFrank H + WeberThomas A + + Computer simulation of local order in condensed phases of silicon + Phys. Rev. B + APS + 1985 + 31 + 8 + 10.1103/PhysRevB.31.5262 + 5262 + + + + + + + KumagaiT + IzumiS + HaraS + SakaiS + + Development of bond-order potentials that can reproduce the elastic constants and melting point of silicon for classical molecular dynamics simulation + Comp. Mater. Sci. + Elsevier + 2007 + 39 + 2 + 10.1016/j.commatsci.2006.07.013 + 457 + 464 + + + + + + TersoffJ + + Modeling solid-state chemistry: Interatomic potentials for multicomponent systems + Phys. Rev. B + APS + 1989 + 39 + 8 + 10.1103/PhysRevB.39.5566 + 5566(R) + + + + + + + BrennerDonald W. + + Empirical potential for hydrocarbons for use in simulating chemical vapor deposition of diamond films + Phys. Rev. B + 1990 + 42 + 15 + 10.1103/PhysRevB.42.9458 + 9458 + 9471 + + + + + + Van BeestBWH + KramerGert Jan + Van SantenRA + + Force fields for silicas and aluminophosphates based on ab initio calculations + Phys. Rev. Lett. + APS + 1990 + 64 + 16 + 10.1103/PhysRevLett.64.1955 + 1955 + + + + + + + Lennard-JonesJohn E + + Cohesion + Proc. Phys. Soc. + IOP Publishing + 1931 + 43 + 5 + 10.1088/0959-5309/43/5/301 + 461 + 482 + + + + + + SihG C + ParisP C + IrwinG R + + On cracks in rectilinearly anisotropic bodies + Int. J. Fract. Mech. + 196509 + 1 + 3 + 0020-7268 + 10.1007/BF00186854 + 189 + 203 + + + + + + SinclairJ E + + The influence of the interatomic force law and of kinks on the propagation of brittle cracks + Philos. Mag. + 1975 + 31 + 3 + 1478-6435 + 10.1080/14786437508226544 + 647 + 671 + + + + + + KermodeJames R + GleizerAnna + KovelGuy + PastewkaLars + CsányiGábor + ShermanDov + De VitaAlessandro + + Low speed crack propagation via kink formation and advance on the silicon (110) cleavage plane + Phys. Rev. Lett. + American Physical Society + 201509 + 115 + 13 + 0031-9007 + 10.1103/PhysRevLett.115.135501 + 135501 + + + + + + + BuzeMaciej + KermodeJames R + + Numerical-continuation-enhanced flexible boundary condition scheme applied to mode-I and mode-III fracture + Phys. Rev. E + American Physical Society + 202103 + 103 + 3 + 10.1103/PhysRevE.103.033002 + 033002 + + + + + + + MartinezL. + AndradeR + BirginE G + MartínezJ M + + PACKMOL: A package for building initial configurations for molecular dynamics simulations + J. Comput. Chem. + 2009 + 30 + 13 + 1096-987X + 10.1002/jcc.21224 + 20928852 + 2157 + 2164 + + + + + + SelberherrSiegfried + + Analysis and simulation of semiconductor devices + Springer Science & Business Media + 1984 + 10.1007/978-3-7091-8752-4 + + + + + + SeidlChristian + HörmannJohannes L. + PastewkaLars + + Molecular simulations of electrotunable lubrication: Viscosity and wall slip in aqueous electrolytes + Tribol. Lett. + 202101 + 69 + 1573-2711 + 10.1007/s11249-020-01395-6 + 22 + + + + + + + BazantMartin Z. + ChuKevin T. + BaylyB. J. + + Current-voltage relations for electrochemical thin films + SIAM J. Appl. Math. + Society for Industrial and Applied Mathematics + 200607 + 65 + 5 + 10.1137/040609938 + 1463 + 1484 + + + + + + JorgensenWilliam L. + MaxwellDavid S. + Tirado-RivesJulian + + Development and testing of the OPLS all-atom force field on conformational energetics and properties of organic liquids + J. Am. Chem. Soc. + 1996 + 118 + 45 + 10.1021/ja9621760 + 11225 + 11236 + + + + + + ThompsonAidan P. + AktulgaH. Metin + BergerRichard + BolintineanuDan S. + BrownW. Michael + CrozierPaul S. + in ’t VeldPieter J. + KohlmeyerAxel + MooreStan G. + NguyenTrung Dac + ShanRay + StevensMark J. + TranchidaJulien + TrottChristian + PlimptonSteven J. + + LAMMPS - a flexible simulation tool for particle-based materials modeling at the atomic, meso, and continuum scale + Comp. Phys. Commun. + 2022 + 271 + 10.1016/j.cpc.2021.108171 + 108171 + + + + + + + MayrhoferLeonhard + MorasGianpietro + MulakaluriNarasimham + RajagopalanSrinivasan + StevensPaul A. + MoselerMichael + + Fluorine-terminated diamond surfaces as dense dipole lattices: The electrostatic origin of polar hydrophobicity + J. Am. Chem. Soc. + 2016 + 138 + 12 + 10.1021/jacs.5b04073 + 4018 + 4028 + + + + + + FalkKerstin + SavioDaniele + MoselerMichael + + Nonempirical free volume viscosity model for alkane lubricants under severe pressures + Phys. Rev. Lett. + 2020 + 124 + 10 + 10.1103/PhysRevLett.124.105501 + 105501 + + + + + + + ReichenbachThomas + MayrhoferLeonhard + KuwaharaTakuya + MoselerMichael + MorasGianpietro + + Steric effects control dry friction of h- and f-terminated carbon surfaces + ACS Appl. Mater. Interf. + 2020 + 12 + 7 + 10.1021/acsami.9b18019 + 8805 + 8816 + + + + + + GoeldelStephan von + ReichenbachThomas + KonigFlorian + MayrhoferLeonhard + MorasGianpietro + JacobsGeorg + MoselerMichael + + A combined experimental and atomistic investigation of PTFE double transfer film formation and lubrication in rolling point contacts + Tribol. Lett. + 2021 + 69 + 10.1007/s11249-021-01508-9 + 136 + + + + + + + FalkKerstin + ReichenbachThomas + GkagkasKonstantinos + MoselerMichael + MorasGianpietro + + Relating dry friction to interdigitation of surface passivation species: A molecular dynamics study on amorphous carbon + Materials + 2022 + 15 + 9 + 10.3390/ma15093247 + 3247 + + + + + + + LoggAnders + MardalKent-Andre + WellsGarth N. + others + + Automated solution of differential equations by the finite element method + + LoggAnders + MardalKent-Andre + WellsGarth N. + + Springer + 2012 + 978-3-642-23098-1 + 10.1007/978-3-642-23099-8 + + + + + + GrießerJan + MorasGianpietro + PastewkaLars + + Yielding under compression and the polyamorphic transition in silicon + Phys. Rev. Mater. + American Physical Society + 202305 + 7 + 5 + 10.1103/PhysRevMaterials.7.055601 + 055601 + + + + + + + GrießerJan + FrérotLucas + OldenstaedtJonas A + MüserMartin H + PastewkaLars + + Analytic elastic constants in molecular calculations: Finite strain, non-affine displacements, and many-body interatomic potentials + Phys. Rev. Mater. + 2023 + 7 + 7 + 10.1103/PhysRevMaterials.7.073603 + 073603 + + + + + + + MillerRonald E + TadmorEllad B + + A unified framework and performance benchmark of fourteen multiscale atomistic/continuum coupling methods + Modell. Simul. Mater. Sci. Eng. + 200907 + 17 + 5 + 10.1088/0965-0393/17/5/053001 + 053001 + + + + + + + AnciauxG + JungeT + HodappM + ChoJ + MolinariJ-F + CurtinW A + + The coupled atomistic/discrete-dislocation method in 3d part I: Concept and algorithms + J. Mech. Phys. Solids + 201809 + 118 + 10.1016/j.jmps.2018.05.004 + 152 + 171 + + + + + + AnciauxGuillaume + + Simulation multi-échelles des solides par une approche couplée dynamique moléculaire/éléments finis. De la modélisation à la simulation haute performance. + Université Sciences et Technologies - Bordeaux I + 200707 + https://theses.hal.science/tel-00263816 + + + + + + CampañáCarlos + MüserMartin H + + Practical green’s function approach to the simulation of elastic semi-infinite solids + Phys. Rev. B + 2006 + 74 + 7 + 10.1103/PhysRevB.74.075420 + 075420 + + + + + + + PastewkaLars + SharpTristan A + RobbinsMark O + + Seamless elastic boundaries for atomistic calculations + Phys. Rev. B + 2012 + 86 + 7 + 10.1103/PhysRevB.86.075459 + 075459 + + + + + + + FalkMichael L + LangerJ S + + Dynamics of viscoplastic deformation in amorphous solids + Phys. Rev. E + 199806 + 57 + 6 + 10.1103/PhysRevE.57.7192 + 7192 + 7205 + + + + + + JanaRichard + PastewkaLars + + Correlations of non-affine displacements in metallic glasses through the yield transition + J. Phys. Mater. + 201907 + 2 + 4 + 10.1088/2515-7639/ab36ed + 045006 + + + + + + + GolaAdrien + ZhangGuang-Ping + PastewkaLars + SchwaigerRuth + + Surface flaws control strain localization in the deformation of Cu|Au nanolaminate pillars + MRS Commun. + 2019 + 9 + 3 + 10.1557/mrc.2019.93 + 1067 + 1071 + + + + + + GolaAdrien + SchwaigerRuth + GumbschPeter + PastewkaLars + + Pattern formation during deformation of metallic nanolaminates + Phys. Rev. Mater. + 202001 + 4 + 1 + 10.1103/PhysRevMaterials.4.013603 + 013603 + + + + + + + FranzblauDeborah S + + Computation of ring statistics for network models of solids + Phys. Rev. B + 199109 + 44 + 10 + 10.1103/PhysRevB.44.4925 + 4925 + 4930 + + + + + + SaadYoucef + + SPARSKIT: A basic tool kit for sparse matrix computations + ntrs.nasa.gov + 199005 + + + + + + PastewkaLars + PouPablo + PérezRubén + GumbschPeter + MoselerMichael + + Describing bond-breaking processes by reactive potentials: Importance of an environment-dependent interaction range + Phys. Rev. B + 2008 + 78 + 16 + 10.1103/PhysRevB.78.161402 + 161402(R) + + + + + + + MüserMartin H + SukhomlinovSergey V + PastewkaLars + + Interatomic potentials: Achievements and challenges + Adv. Phys. X + Taylor & Francis + 202301 + 8 + 1 + 10.1080/23746149.2022.2093129 + 2093129 + + + + + + + BatatiaIlyes + KovacsDavid Peter + SimmGregor N. C. + OrtnerChristoph + CsanyiGabor + + MACE: Higher order equivariant message passing neural networks for fast and accurate force fields + Advances in neural information processing systems + + OhAlice H. + AgarwalAlekh + BelgraveDanielle + ChoKyunghyun + + 2022 + https://openreview.net/forum?id=YPpSngE-ZU + + + + + + BatatiaIlyes + BatznerSimon + KovácsDávid Péter + MusaelianAlbert + SimmGregor N. C. + DrautzRalf + OrtnerChristoph + KozinskyBoris + CsányiGábor + + The design space of E(3)-equivariant atom-centered interatomic potentials + 2022 + https://arxiv.org/abs/2205.06643 + 10.48550/arXiv.2205.06643 + + + + + + PeguironAnke + MorasGianpietro + WalterMichael + UetsukaHiroshi + PastewkaLars + MoselerMichael + + Activation and mechanochemical breaking of C−C bonds initiate wear of diamond (110) surfaces in contact with silica + Carbon + 2016 + 98 + 10.1016/j.carbon.2015.10.098 + 474 + 483 + + + + + + MorasG. + KlemenzAndreas + ReichenbachThomas + GolaAdrien + UetsukaHiroshi + MoselerMichael + PastewkaLars + + Shear melting of silicon and diamond and the disappearance of the polyamorphic transition under shear + Phys. Rev. Mater. + 201808 + 2 + 8 + 10.1103/PhysRevMaterials.2.083601 + 083601 + + + + + + + ReichenbachThomas + MorasGianpietro + PastewkaLars + MoselerMichael + + Solid-phase silicon homoepitaxy via shear-induced amorphization and recrystallization + Phys. Rev. Lett. + 202109 + 127 + 12 + 10.1103/PhysRevLett.127.126101 + 126101 + + + + + + + MorasG + PastewkaL + GumbschP + MoselerM + + Formation and oxidation of linear carbon chains and their role in the wear of carbon materials + Tribol. Lett. + Springer + 2011 + 44 + 10.1007/s11249-011-9864-9 + 355 + + + + + + + PastewkaLars + MoserStefan + GumbschPeter + MoselerMichael + + Anisotropic mechanical amorphization drives wear in diamond + Nat. Mater. + 201111 + 10 + 1 + 10.1038/nmat2902 + 34 + 38 + + + + + + HarrisCharles R + MillmanK Jarrod + WaltStéfan J van der + GommersRalf + VirtanenPauli + CournapeauDavid + WieserEric + TaylorJulian + BergSebastian + SmithNathaniel J + KernRobert + PicusMatti + HoyerStephan + KerkwijkMarten H van + BrettMatthew + HaldaneAllan + Rı́oJaime Fernández del + WiebeMark + PetersonPearu + Gérard-MarchantPierre + SheppardKevin + ReddyTyler + WeckesserWarren + AbbasiHameer + GohlkeChristoph + OliphantTravis E + + Array programming with NumPy + Nature + 202009 + 585 + 7825 + 10.1038/s41586-020-2649-2 + 357 + 362 + + + + + + VirtanenPauli + GommersRalf + OliphantTravis E + HaberlandMatt + ReddyTyler + CournapeauDavid + BurovskiEvgeni + PetersonPearu + WeckesserWarren + BrightJonathan + WaltStéfan J van der + BrettMatthew + WilsonJoshua + MillmanK Jarrod + MayorovNikolay + NelsonAndrew R J + JonesEric + KernRobert + LarsonEric + CareyC J + Polatİlhan + FengYu + MooreEric W + VanderPlasJake + LaxaldeDenis + PerktoldJosef + CimrmanRobert + HenriksenIan + QuinteroE A + HarrisCharles R + ArchibaldAnne M + RibeiroAntônio H + PedregosaFabian + MulbregtPaul van + SciPy 1.0 Contributors + VijaykumarAditya + BardelliAlessandro Pietro + RothbergAlex + HilbollAndreas + KloecknerAndreas + ScopatzAnthony + LeeAntony + RokemAriel + WoodsC Nathan + FultonChad + MassonCharles + HäggströmChristian + FitzgeraldClark + NicholsonDavid A + HagenDavid R + PasechnikDmitrii V + OlivettiEmanuele + MartinEric + WieserEric + SilvaFabrice + LendersFelix + WilhelmFlorian + YoungG + PriceGavin A + IngoldGert-Ludwig + AllenGregory E + LeeGregory R + AudrenHervé + ProbstIrvin + DietrichJörg P + SilterraJacob + WebberJames T + SlavičJanko + NothmanJoel + BuchnerJohannes + KulickJohannes + SchönbergerJohannes L + Miranda CardosoJosé Vinı́cius de + ReimerJoscha + HarringtonJoseph + Rodrı́guezJuan Luis Cano + Nunez-IglesiasJuan + KuczynskiJustin + TritzKevin + ThomaMartin + NewvilleMatthew + KümmererMatthias + BolingbrokeMaximilian + TartreMichael + PakMikhail + SmithNathaniel J + NowaczykNikolai + ShebanovNikolay + PavlykOleksandr + BrodtkorbPer A + LeePerry + McGibbonRobert T + FeldbauerRoman + LewisSam + TygierSam + SievertScott + VignaSebastiano + PetersonStefan + MoreSurhud + PudlikTadeusz + OshimaTakuya + PingelThomas J + RobitailleThomas P + SpuraThomas + JonesThouis R + CeraTim + LeslieTim + ZitoTiziano + KraussTom + UpadhyayUtkarsh + HalchenkoYaroslav O + Vázquez-BaezaYoshiki + + SciPy 1.0: Fundamental algorithms for scientific computing in Python + Nat. Methods + 202003 + 17 + 3 + 10.1038/s41592-019-0686-2 + 261 + 272 + + + + + + HirelPierre + + Atomsk: A tool for manipulating and converting atomic data files + Comput. Phys. Commun. + 201512 + 197 + 10.1016/j.cpc.2015.07.012 + 212 + 219 + + + + + + DawMurray S. + BaskesMichael I. + + Embedded-atom method: Derivation and application to impurities, surfaces, and other defects in metals + Phys. Rev. B + American Physical Society + 198406 + 29 + 12 + https://link.aps.org/doi/10.1103/PhysRevB.29.6443 + 10.1103/PhysRevB.29.6443 + 6443 + 6453 + + + + + + ChourdakisG + DavisK + RodenbergB + SchulteM + SimonisF + UekermannB + AbramsG + BungartzHJ + Cheung YauL + DesaiI + EderK + HertrichR + LindnerF + RuschA + SashkoD + SchneiderD + TotounferoushA + VollandD + VollmerP + KoseomurOZ + + preCICE v2: A sustainable and user-friendly coupling library [version 2; peer review: 2 approved] + Open Research Europe + 2022 + 2 + 51 + https://doi.org/10.12688/openreseurope.14445.2 + 10.12688/openreseurope.14445.2 + + + + + + DehningCarsten + BierwischClaas + KraftTorsten + + Co-simulations of discrete and finite element codes + Meshfree methods for partial differential equations VII + + GriebelMichael + SchweitzerMarc Alexander + + Springer + Cham + 2015 + 978-3-319-06898-5 + 10.1007/978-3-319-06898-5_4 + 61 + 79 + + + + +
diff --git a/joss.05668/10.21105.joss.05668.pdf b/joss.05668/10.21105.joss.05668.pdf new file mode 100644 index 0000000000..e2c589b199 Binary files /dev/null and b/joss.05668/10.21105.joss.05668.pdf differ diff --git a/joss.05668/media/nl_time.svg b/joss.05668/media/nl_time.svg new file mode 100644 index 0000000000..22eb1239eb --- /dev/null +++ b/joss.05668/media/nl_time.svg @@ -0,0 +1,1026 @@ + + + + + + + + 2023-02-17T11:22:08.824548 + image/svg+xml + + + Matplotlib v3.5.1, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +