Closed PaulWAyers closed 5 years ago
Use mpmath for the Boys function. It means that we get arbitrary-precision integrals 'for free.' Performance is good at standard precision too, and the next Intel hardware may even support arbitrary precision natively.
http://mpmath.org/ https://www.anandtech.com/show/13405/intel-10nm-cannon-lake-and-core-i3-8121u-deep-dive-review/4 (hat-tip Matt via Slack)
compute_external_potential(shell1, center1, shell2, center2, conventions, point_charges, point_coords)
Compute the potential due to a product of 2 shells of Gaussians with an array of point charges and their centers. Gives the matrix of external potential integrals
compute_extpot(shell1, center1, shell2, center2, conventions, Boys_function)
(or something like that).Algorithm could be McMurchie-Davidson or Obara-Saika but probably Obara-Saika is a bit easier?