ChemPotPy : A Python Library for Analytic Representations of Potential Energy Surfaces and Diabatic Potential Energy Matrices.
Yinan ShuZoltan VargaDayou ZhangDonald G TruhlarPublished in: The journal of physical chemistry. A (2023)
Constructing analytic representations of global and semiglobal potential energy surfaces is difficult and can be laborious, and it is even harder when one needs coupled potential energy surfaces and their electronically nonadiabatic couplings. When accomplished, however, the resulting potential functions are a valuable resource. To facilitate the convenient use of potentials that have been developed, we provide a collection of existing surfaces in a library with consistent units and formats. A potential energy surface library of this type, namely PotLib , was built more than 20 years ago. However, that library only provided pristine Fortran subroutines for each potential energy surface, and therefore, it is not as user-friendly as would be desirable. Here, we report the creation of ChemPotPy , a CHEMical library of POTential energy surfaces in PYthon. ChemPotPy is a user-friendly library for analytic representation of single-state and multistate potential energy surfaces and couplings. A given entry in the library contains an analytic potential energy function or analytic functions for a set of coupled potential energy surfaces, and depending on the case, it may also include analytic or numerical gradients, nonadiabatic coupling vectors, and/or diabatic potential energy matrices and their gradients. Only three inputs, namely, the chemical formula of the system, the name of the potential energy surface or surface set, and the Cartesian geometry, are required. ChemPotPy uses the same units for input and output quantities of all surfaces and surface sets to facilitate general interfaces with the dynamics programs. The initial version of the library contains 338 entries, and we anticipate that more will be added in the future.