#include <miller_index_lookup.hpp>
Public Member Functions | |
| MillerIndexLookup ()=default | |
| void | build (const std::vector< GVector > &g_vectors) |
| int | find (const IntegerVector3D &miller) const |
| int | find (int miller_h, int miller_k, int miller_l) const |
| int | size () const |
Definition at line 29 of file miller_index_lookup.hpp.
|
default |
|
inline |
Build the lookup table from a charge-density G-vector list: index i's Miller triple maps to i. g_vectors is typically GVectorsGrid::g_vectors() – the sphere every per-k-point plane-wave set and every augmentation-function table is indexed into.
Definition at line 39 of file miller_index_lookup.hpp.
References q3::IntegerVector3D::x, q3::IntegerVector3D::y, and q3::IntegerVector3D::z.
Referenced by q3::PlanewaveWannierCapture::PlanewaveWannierCapture().
|
inline |
The global G-vector index for the given Miller triple, or -1 if it falls outside the charge-density sphere this lookup was built from. A miss is a legitimate outcome (a k+b plane wave can fall just outside the sphere at the zone boundary) – callers count misses rather than treat them as errors.
Definition at line 65 of file miller_index_lookup.hpp.
References find(), q3::IntegerVector3D::x, q3::IntegerVector3D::y, and q3::IntegerVector3D::z.
Referenced by q3::PlanewaveBlochOverlapCalculator::compute(), and find().
|
inline |
Definition at line 69 of file miller_index_lookup.hpp.
|
inline |
Definition at line 78 of file miller_index_lookup.hpp.