Article,

Analytical derivatives, forces, force constants, molecular geometries, and related response properties in electronic structure theory

.
Wiley Interdisciplinary Reviews: Computational Molecular Science, 4 (3): 169--181 (May 2014)
DOI: 10.1002/wcms.1171

Abstract

Analytical calculation of energy derivatives with respect to nuclear coordinates revolutionized applied molecular quantum mechanics by allowing the routine calculation of molecular structures and related properties. The cost of calculating first derivatives (gradients, forces) is comparable to the calculation of the energy for most electronic structure methods. Thus analytical differentiation, compared to numerical one, increases efficiency by a factor proportional to the number of nuclei and greatly improves numerical accuracy. Coordinate derivatives, together with their generalizations to electric and magnetic perturbations, are crucial for the determination of transition states, vibrational frequencies, infrared and Raman intensities, non-Born–Oppenheimer couplings, and magnetic properties: NMR spectra, magnetizability, vibrational circular dichroism, etc. Derivative theory, unlike perturbation theory, generally requires perturbation-dependent basis sets. The inclusion of contributions originating from this dependence is a better alternative than using the Hellmann–Feynman theorem with an extended basis set. Analytical second derivatives, compared to the numerical differentiation of first derivatives, do not yield savings similar to first derivatives versus energy, in accordance with Wigner's 2n + 1 rule, but still improve greatly efficiency and numerical accuracy. Third and fourth derivatives have also been implemented for simpler wavefunctions. Analytical gradients were initially formulated for variational wavefunctions. It was realized only later that the penalty for nonvariational wavefunctions is modest. The Lagrangian formulation provides a simple, elegant framework for general derivative theory. Disadvantages of analytical derivatives are increased code complexity, and, particularly for higher derivatives, the requirement of large blocks of computer time and memory, both of which may interfere with code parallelization.

Tags

Users

  • @drmatusek

Comments and Reviews