5#ifndef K_VECTOR_UTILS_H
6#define K_VECTOR_UTILS_H
3x3 matrix and related mathamatical operations
Definition matrix3.h:19
Definition k_vector_utils.cpp:16
void kvec_c2d(K_Vectors &kv, const ModuleBase::Matrix3 &latvec)
Definition k_vector_utils.cpp:62
void set_both_kvec(K_Vectors &kv, const ModuleBase::Matrix3 &G, const ModuleBase::Matrix3 &R, std::string &skpt)
Sets both the direct and Cartesian k-vectors.
Definition k_vector_utils.cpp:83
void kvec_ibz_kpoint(K_Vectors &kv, const ModuleSymmetry::Symmetry &symm, bool use_symm, std::string &skpt, const UnitCell &ucell, bool &match)
Generates irreducible k-points in the Brillouin zone considering symmetry operations.
Definition k_vector_utils.cpp:345
void print_klists(const K_Vectors &kv, std::ofstream &ofs)
Prints the k-points in both Cartesian and direct coordinates.
Definition k_vector_utils.cpp:178
void kvec_mpi_k(K_Vectors &kv)
Distributes k-points among MPI processes.
Definition k_vector_utils.cpp:221
void kvec_d2c(K_Vectors &kv, const ModuleBase::Matrix3 &reciprocal_vec)
Definition k_vector_utils.cpp:17
void set_after_vc(K_Vectors &kv, const int &nspin_in, const ModuleBase::Matrix3 &reciprocal_vec)
Sets up the k-points after a volume change.
Definition k_vector_utils.cpp:148