{"id":620,"date":"2016-10-20T14:55:58","date_gmt":"2016-10-20T18:55:58","guid":{"rendered":"https:\/\/scholarblogs.emory.edu\/bowman\/?page_id=620"},"modified":"2024-11-23T15:42:32","modified_gmt":"2024-11-23T20:42:32","slug":"msa","status":"publish","type":"page","link":"https:\/\/scholarblogs.emory.edu\/bowman\/msa\/","title":{"rendered":"MSA"},"content":{"rendered":"<p style=\"text-align: center\"><strong>Monomial Symmetrization for Creating Permutationally Invariant Polynomials and Potential Energy Surface (PES) Fitting<\/strong><\/p>\n<p><strong>MSA 2.0.1 <a href=\"https:\/\/github.com\/szquchen\/MSA-2.0\/releases\/tag\/v2.0.1\">https:\/\/github.com\/szquchen\/MSA-2.0\/releases\/tag\/v2.0.1<\/a><br \/>\n<\/strong><\/p>\n<p><strong>The Software<\/strong><br \/>\nMSA is software that produces polynomials and their gradient of a desired maximum order that are invariant with respect to permutations of like atoms. These are called permutationally invariant polynomials (PIPs).\u00a0 Optionally these PIPs and gradients are used in linear regression to fit electronic energies and gradients given in standard format at nuclear configurations in Cartesian coordinates. There is an option to weight the energies and also to change the Morse range parameter.\u00a0 Default values are in the file param.inp and they can be used as is, or changed in the interactive script shown in the video below. We suggest that the user experiment with both parameters to achieve an optimum precision of the fit.<\/p>\n<p>A\u00a0 data set for CH<sub>4<\/sub> is provided as part of the download of MSA.zip folder. This is not needed if you are just generating PIPs.\u00a0 \u00a0Below is a sample:\u00a0 no. of atoms, <strong>energy in hartree<\/strong>, atom label followed by <strong>cartesian coords in angstroms<\/strong> and <strong>cartesian components of grad (if inputed) in hartree\/bohr<\/strong>\u00a0blank otherwise. Based on the order of atoms the symmetry label is 4 1.\u00a0 This indicates that the full permutation group of the 4 H atoms will be used.\u00a0 A reduced symmetry, for example, 2 2 1 could also be used, but that is not done in this case.<\/p>\n<p>5<br \/>\n-40.48132472<br \/>\nH -0.10095840 -0.41955010 -1.31205540 0.00475800 -0.00753200 0.00876200<br \/>\nH -0.33382290 -1.64227710 -0.08089010 0.00501000 -0.01045300 -0.00392400<br \/>\nH 0.27898620 0.01183520 0.37889600 0.00242100 0.01037400 0.00814600<br \/>\nH -1.41320490 -0.14046190 -0.03074290 -0.00415000 0.00917100 0.01147400<br \/>\nC -0.41724430 -0.55439810 -0.28616510 -0.00804000 -0.00155500 -0.02444600<\/p>\n<p><strong>A Short Video on Creating a PIP Basis and Fitting\u00a0<\/strong><br \/>\nIn the video we take you through the process of using this MSA software and provide an example for a fit of the H<sub>3<\/sub>O<sub>2<\/sub><sup>&#8211;<\/sup> potential.<sup>4<\/sup>\u00a0 We assume the MSA folder has been downloaded and unzipped. The driver is &#8220;msa.py&#8221;. \u00a0 Note the default value of the Morse range parameter used in the fit in the video is 2 bohr.\u00a0 A value of 3 bohr was used in ref. 4 and this gave smaller fitting root mean square errors. The wall clock time to generate the basis is about 2 minutes and also several minutes to do the fit.\u00a0 This is on a single 2018 Intel<span class=\"s1\">. <\/span>Core<span class=\"s2\">TM <\/span>i7-8750H processor.<\/p>\n<div style=\"width: 584px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-620-1\" width=\"584\" height=\"451\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/scholarblogs.emory.edu\/bowman\/files\/2024\/01\/Msa201_short_video.mp4?_=1\" \/><a href=\"https:\/\/scholarblogs.emory.edu\/bowman\/files\/2024\/01\/Msa201_short_video.mp4\">https:\/\/scholarblogs.emory.edu\/bowman\/files\/2024\/01\/Msa201_short_video.mp4<\/a><\/video><\/div>\n<p><strong>What is Needed in Order to Run the Codes<br \/>\n<\/strong><\/p>\n<ul>\n<li><strong>For the PIP basis <\/strong><\/li>\n<li>C++ compiler. We used the GNU Compiler Collection on our Linux cluster (&#8220;GCC 4.4.7 20120313 (Red Hat 4.4.7-16)) in the example. <a href=\"https:\/\/gcc.gnu.org\" target=\"_blank\" rel=\"noopener\">Freely available.<br \/>\n<\/a><\/li>\n<li>Perl.\u00a0 We used Perl v5.10.1 (*) built for x86_64-linux-thread-multi. <a href=\"https:\/\/www.perl.org\/get.html\" target=\"_blank\" rel=\"noopener\">Freely available.<\/a><\/li>\n<li>Python. We used Python 2.6.6 and 3.8.5 and versions in between<\/li>\n<li><strong>For fitting<\/strong><\/li>\n<li>Fortran 90 compiler. We used the Intel\u00ae Fortran Compiler (&#8220;ifort 15.0.0 20140723&#8221;) in the example.\u00a0 gfortran is also included as an option in the makefile.<\/li>\n<li>The &#8220;dgelss&#8221; subroutine from LAPACK, which is\u00a0embedded in\u00a0Intel\u00ae Math Kernel Library (Intel\u00ae MKL).\u00a0<a href=\"https:\/\/software.intel.com\/en-us\/intel-mkl\" target=\"_blank\" rel=\"noopener\">Freely available<\/a><\/li>\n<li>Users have to provide the data set of electronic energies.<\/li>\n<\/ul>\n<p><strong>References About the MSA Software<\/strong><br \/>\n1. Xie, Z., Bowman, J.M. Permutationally Invariant Polynomial Basis for Molecular Energy Surface Fitting via Monomial Symmetrization. <em>J. Chem. Theory Comput<\/em>. 2010, <strong>6<\/strong>, 26-34.\u00a0 <span class=\"hlFld-ContribAuthor\" data-id=\"article_author_info\">Nandi, A. Qu, Chen, Bowman, J.M.<\/span>\u00a0<span class=\"hlFld-Title\">Using Gradients in Permutationally Invariant Polynomial Potential Fitting: A Demonstration for CH<sub>4<\/sub> Using as Few as 100 Configurations, <em>J. Chem. Theory Comput<\/em>. 2019, <strong>15<\/strong>, 2826-2835. P<\/span>lease cite these as the primary references to the MSA software.<\/p>\n<p>2. PL Houston, et al.,Permutationally invariant polynomial regression for energies and gradients, using reverse differentiation, achieves orders of magnitude speed-up with high precision compared to other machine learning methods, <em>J. Chem. Phys.<\/em> 2022 <strong>156<\/strong>, 044120<\/p>\n<p>3. PL Houston, C Qu, Q Yu, R Conte, A Nandi, JK Li, JM Bowman, PESPIP: Software to fit complex molecular and many-body potential energy surfaces with permutationally invariant polynomials, \u00a0<em>J. Chem. Phys.<\/em> 2023 <strong>158<\/strong>, 044109 .\u00a0 This is about enhanced PIPs and fast grad evaluation using Mathematica notebooks.\u00a0 This software can be downloaded from <a href=\"https:\/\/github.com\/PaulLHouston\/PESPIP\">https:\/\/github.com\/PaulLHouston\/PESPIP<\/a><\/p>\n<p>4.<span class=\"hlFld-Title\">Assessing Permutationally Invariant Polynomial and Symmetric Gradient Domain Machine Learning Potential Energy Surfaces for H<sub>3<\/sub>O<sub class=\"stack\">2<sup>&#8211; <\/sup>\u00a0<\/sub><\/span><span dir=\"ltr\" role=\"presentation\">Priyanka Pandey,<\/span>\u00a0<span dir=\"ltr\" role=\"presentation\">Mrinal Arandhara,<\/span>\u00a0<span dir=\"ltr\" role=\"presentation\">Paul L. Houston,<\/span>\u00a0<span dir=\"ltr\" role=\"presentation\">Chen Qu,<\/span> Riccardo Conte, <span dir=\"ltr\" role=\"presentation\">Joel M. <\/span><span dir=\"ltr\" role=\"presentation\">Bowman,<\/span>\u00a0<span dir=\"ltr\" role=\"presentation\">and Sai G. Ramesh, <em>J. Phys. Chem.<\/em> A, 2024\u00a0<em>128<\/em> , 3212-3219.<\/span><\/p>\n<p><strong>Contact Information<\/strong><br \/>\nJoel Bowman: jmbowma at emory.edu<\/p>\n<p><strong>Funding <\/strong><br \/>\nFunding from the National Science Foundation, Army Research Office and NASA is acknowledged.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Monomial Symmetrization for Creating Permutationally Invariant Polynomials and Potential Energy Surface (PES) Fitting MSA 2.0.1 https:\/\/github.com\/szquchen\/MSA-2.0\/releases\/tag\/v2.0.1 The Software MSA is software that produces polynomials and their gradient of a desired maximum order that are invariant with respect to permutations of &hellip; <a href=\"https:\/\/scholarblogs.emory.edu\/bowman\/msa\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2840,"featured_media":0,"parent":0,"menu_order":15,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-620","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/scholarblogs.emory.edu\/bowman\/wp-json\/wp\/v2\/pages\/620","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scholarblogs.emory.edu\/bowman\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/scholarblogs.emory.edu\/bowman\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/scholarblogs.emory.edu\/bowman\/wp-json\/wp\/v2\/users\/2840"}],"replies":[{"embeddable":true,"href":"https:\/\/scholarblogs.emory.edu\/bowman\/wp-json\/wp\/v2\/comments?post=620"}],"version-history":[{"count":65,"href":"https:\/\/scholarblogs.emory.edu\/bowman\/wp-json\/wp\/v2\/pages\/620\/revisions"}],"predecessor-version":[{"id":1348,"href":"https:\/\/scholarblogs.emory.edu\/bowman\/wp-json\/wp\/v2\/pages\/620\/revisions\/1348"}],"wp:attachment":[{"href":"https:\/\/scholarblogs.emory.edu\/bowman\/wp-json\/wp\/v2\/media?parent=620"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}