|
excgrid 0.1.0
Grid + XC-kernel + D3 library
|
Classes | |
| class | excgrid::RadialGrid |
| class | excgrid::AngularGrid |
| struct | excgrid::GridParams |
| struct | excgrid::Block |
| class | excgrid::BlockGrid |
Functions | |
| static Result< RadialGrid > | excgrid::RadialGrid::Create (std::size_t pointCount, double alpha, std::size_t exponent=2) |
| std::size_t | excgrid::RadialGrid::Size () const noexcept |
| std::span< const double > | excgrid::RadialGrid::Points () const noexcept |
| std::span< const double > | excgrid::RadialGrid::Weights () const noexcept |
| static Result< AngularGrid > | excgrid::AngularGrid::Create (std::size_t pointCount) |
| std::size_t | excgrid::AngularGrid::Size () const noexcept |
| std::size_t | excgrid::AngularGrid::Degree () const noexcept |
| std::array< double, 3 > | excgrid::AngularGrid::Point (std::size_t index) const noexcept |
| double | excgrid::AngularGrid::Weight (std::size_t index) const noexcept |
| static Result< BlockGrid > | excgrid::BlockGrid::Create (const Geometry &geometry, const GridParams ¶ms={}) |
| std::size_t | excgrid::BlockGrid::BlockCount () const noexcept |
| std::span< const Block > | excgrid::BlockGrid::Blocks () const noexcept |
| std::size_t | excgrid::BlockGrid::TotalPointCount () const noexcept |
Variables | |
| static constexpr std::span< const std::size_t, internal::kLebedevSizeCount > | excgrid::AngularGrid::kAvailableSizes |
| The available point counts, smallest first. | |
| std::size_t | excgrid::GridParams::radialPoints = 75 |
| Radial points per atom. | |
| std::size_t | excgrid::GridParams::angularPoints = 302 |
| A Lebedev size (AngularGrid::kAvailableSizes). | |
| double | excgrid::GridParams::alpha = 0.5 |
| Radial mapping scale, Bohr. | |
| std::size_t | excgrid::GridParams::radialExponent = 2 |
| The MHL mapping exponent m. | |
| double | excgrid::GridParams::trimWeight = 1e-15 |
| Points with |weight| below this are dropped. | |
| std::size_t | excgrid::GridParams::blockTarget = 1024 |
| Spatial re-batching target (points per block). | |
| std::size_t | excgrid::Block::pointCount = 0 |
| Points in the block. | |
| std::vector< std::array< double, 3 > > | excgrid::Block::points |
| pointCount positions, Bohr. | |
| std::vector< double > | excgrid::Block::weights |
| pointCount quadrature weights. | |
| std::vector< std::size_t > | excgrid::Block::atomIndex |
| pointCount owning atoms. | |
The radial and angular quadratures, the Becke fuzzy-cell partition, and the trimmed, spatially re-batched molecular blocks the kernel consumers walk (docs/kernel-api.md section 5).
|
inlinenodiscardnoexcept |
The number of blocks.
|
inlinenodiscardnoexcept |
The blocks, in iteration order.
|
static |
Creates the quadrature with the given point count.
| pointCount | A size from kAvailableSizes. |
|
static |
Builds the grid for the geometry.
| geometry | The molecule whose atoms center the sub-grids. |
| params | The build parameters. |
|
static |
Creates the quadrature.
| pointCount | Radial points; the outermost lies at r_max. |
| alpha | Length scale of the mapping (Bohr). |
| exponent | The mapping exponent m; 2 is the standard choice. |
|
inlinenodiscardnoexcept |
The algebraic degree of exactness of the quadrature.
|
nodiscardnoexcept |
The unit-sphere node at index (Bohr-free unit vector).
| index | The node index in [0, Size()). |
|
inlinenodiscardnoexcept |
The radial points, innermost first.
|
inlinenodiscardnoexcept |
The number of quadrature nodes.
|
inlinenodiscardnoexcept |
The radial point count.
|
inlinenodiscardnoexcept |
The total point count across all blocks.
|
nodiscardnoexcept |
The node weight at index (weights sum to 4 pi).
| index | The node index in [0, Size()). |
|
inlinenodiscardnoexcept |
The radial weights (Jacobian included, no r^2 factor).
|
staticconstexpr |
The available point counts, smallest first.