Skip to content

Latest commit

 

History

48 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Associated Legendre Polynomials and Spherical Harmonics Computation for Chemistry Applications

A C++ library for accurate and efficient computation of associated Legendre polynomials and real spherical harmonics for use in chemistry applications.

Our algorithms are based on the following design principles:

  • Normalize polynomials P*lm* to avoid overflow/underflow.
  • Use a RR in the direction of increasing l for ALPs for stability.
  • Use trigonometric RRs for sin and cos functions in SHs to save time.
  • Precompute coefficients in the RRs to reduce computational cost.
  • Compute an entire set of normalized P*lm* where m ≥ 0 in a single function call to reduce overhead.
  • Avoid loop dependencies in inner loops, allowing operations to be vectorized and pipelined for execution.

A Makefile is provided to build the library in a Unix-like environment.

For a full description of the code, please see:

Associated Legendre Polynomials and Spherical Harmonics Computation for Chemistry Applications (2014). Taweetham Limpanuparb and Josh Milthorpe. arXiv: 1410.1748 [physics.chem-ph]

About

C++ code to compute normalized associated Legendre polynomials and spherical harmonics

Resources

Stars

17 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages