|
excgrid 0.1.0
Grid + XC-kernel + D3 library
|
#include <grid.hpp>
Public Member Functions | |
| std::size_t | Size () const noexcept |
| std::span< const double > | Points () const noexcept |
| std::span< const double > | Weights () const noexcept |
Static Public Member Functions | |
| static Result< RadialGrid > | Create (std::size_t pointCount, double alpha, std::size_t exponent=2) |
A radial quadrature for the atomic radial coordinate, using the Murray-Handy-Laming substitution (Mol. Phys. 78 (1993) 997) with Euler-Maclaurin trapezoidal points: r(q) = alpha * (q / (1 - q))^m mapping q in [0, 1) onto r in [0, inf). Points sit at q_i = i / N with N = pointCount + 1, so the outermost finite point is r_max = alpha * pointCount^m. Weights carry the substitution Jacobian dr/dq * (1/N) but NOT the r^2 of the volume element - the atomic product grid folds r^2 in when it combines radial and angular quadratures.