24 Real energy_cutoff_charge_density,
38 Real two_pi_over_lattice_parameter_squared =
43 energy_cutoff_charge_density / two_pi_over_lattice_parameter_squared;
101 return first_vector.magnitude_squared < second_vector.magnitude_squared;
162 std::sqrt(
g_vectors_[
g_index].magnitude_squared) * two_pi_over_lattice_parameter;
226 Real two_pi_over_lattice_parameter_squared)
const {
228 energy_cutoff_wavefunction / two_pi_over_lattice_parameter_squared;
Real two_pi_over_lattice_parameter_squared() const
Real two_pi_over_lattice_parameter() const
const Matrix3x3 & reciprocal_lattice_vectors() const
const std::vector< Real > & g_vector_magnitudes() const
void generate(const Crystal &crystal_structure, Real energy_cutoff_charge_density, int grid_dimension_1, int grid_dimension_2, int grid_dimension_3, bool is_gamma_only=false, int rank=0, int size=1, int fft_local_start=-1, int fft_local_dimension_1=-1)
int local_g_vector_start_index() const
int estimate_maximum_plane_waves_per_kpoint(Real energy_cutoff_wavefunction, Real two_pi_over_lattice_parameter_squared) const
int first_nonzero_g_index_
const GVector & g_vector(int index) const
std::vector< Real > g_vector_magnitudes_
const std::vector< GVector > & g_vectors() const
int number_of_g_vectors() const
int g_vector_to_fft_grid_index(const GVector &g_vector) const
Compute the FFT grid index for a G-vector from its Miller indices.
int local_number_of_g_vectors() const
int first_nonzero_g_index() const
std::vector< GVector > g_vectors_
int global_number_of_g_vectors() const
int grid_dimension_1() const
int global_number_of_g_vectors_
bool is_gamma_only() const
A grid of reciprocal-space vectors.
const ReciprocalSpaceVector & vector(int index) const
constexpr double zero_vector_magnitude_threshold
constexpr double energy_cutoff_rounding_tolerance
A reciprocal lattice vector with Miller indices, used in plane-wave calculations.
IntegerVector3D miller
Integer Miller indices (h, k, l).
Vector3D g_cart
Cartesian coordinates in units of 2π/alat.
3×3 matrix stored row-major: row i = mat[i]