An efficient algorithm for the determination of force constants and displacements in numerical definitions of a large, general order Taylor series expansion

Document Type


Publication Date

July 2017

Publication Title

Journal of Mathematical Chemistry


The venerable Taylor series expansion is a workhorse of computational modeling within the computational and quantum chemistry disciplines. It provides a highly-descriptive means of constructing complicated functions reliably. However, higher-order implementations or broadly defined functions with large numbers of variables can create a significant bottleneck for implementation of the Taylor series model. Most notably, construction of the internuclear potential for anharmonic vibrational frequency computations of large molecules like polycyclic aromatic hydrocarbons can become intractable to setup, much less compute due to the sheer volume of internal coordiantes. This work highlights the use of a lazy cartesian product to generate intelligently the required force constant definitions and subsequent displacements for numerical differentiation schemes with direct application to the definition of vibrational wave functions of molecules such as polycyclic aromatic hydrocarbons which can have dozens to hundreds of atoms. The key feature of the algorithm is its ability to generate directly only the non-zero rows of the Cartesian product (i.e. the Taylor series) while skipping large sections of unnecessary work in computing force constants and the subsequent displacements for unrequested higher-order derivatives with further considerations for symmetry. The savings of this algorithm are orders of magnitude greater than naïvely written nested loops. Furthermore, this algorithm facilitates highly balanced job partitioning, a key element of parallelization and high performance computing necessary for such large molecules. This approach can open the use of the Taylor series to formerly size-forbidden molecules.