|
| | Gvec (r3::vector< double > vk__, r3::matrix< double > M__, double Gmax__, mpi::Communicator const &comm__, bool reduce_gvec__, double sym_tol__=1e-6) |
| | Constructor for G+k vectors. More...
|
| |
| | Gvec (r3::matrix< double > M__, double Gmax__, mpi::Communicator const &comm__, bool reduce_gvec__, double sym_tol__=1e-6) |
| | Constructor for G-vectors. More...
|
| |
| | Gvec (r3::matrix< double > M__, double Gmax__, fft::Grid const &fft_grid__, mpi::Communicator const &comm__, bool reduce_gvec__, double sym_tol__=1e-6) |
| | Constructor for G-vectors. More...
|
| |
| | Gvec (double Gmax__, Gvec const &gvec_base__) |
| | Constructor for G-vector distribution based on a previous set. More...
|
| |
| | Gvec (r3::matrix< double > M__, double Gmax__, bool reduce_gvec__, double sym_tol__=1e-6) |
| | Constructor for G-vectors with mpi_comm_self() More...
|
| |
| | Gvec (r3::vector< double > vk__, r3::matrix< double > M__, int ngv_loc__, int const *gv__, mpi::Communicator const &comm__, bool reduce_gvec__) |
| | Construct with the defined order of G-vectors. More...
|
| |
| | Gvec (mpi::Communicator const &comm__) |
| | Constructor for empty set of G-vectors. More...
|
| |
|
Gvec & | operator= (Gvec &&src__)=default |
| | Move assignment operator.
|
| |
|
| Gvec (Gvec &&src__)=default |
| | Move constructor.
|
| |
| auto const & | vk () const |
| |
| mpi::Communicator const & | comm () const |
| |
| auto const & | lattice_vectors (r3::matrix< double > lattice_vectors__) |
| | Set the new reciprocal lattice vectors. More...
|
| |
| auto const & | lattice_vectors () const |
| | Retrn a const reference to the reciprocal lattice vectors. More...
|
| |
| auto const | unit_cell_lattice_vectors () const |
| |
| double | omega () const |
| | Return the volume of the real space unit cell that corresponds to the reciprocal lattice of G-vectors. More...
|
| |
| int | num_gvec () const |
| | Return the total number of G-vectors within the cutoff. More...
|
| |
| int | zcol_count (int rank__) const |
| | Number of z-columns for a fine-grained distribution. More...
|
| |
| int | zcol_offset (int rank__) const |
| | Offset in the global index of z-columns for a given rank. More...
|
| |
| int | gvec_count (int rank__) const |
| | Number of G-vectors for a fine-grained distribution. More...
|
| |
| int | count () const |
| | Number of G-vectors for a fine-grained distribution for the current MPI rank. More...
|
| |
| int | gvec_offset (int rank__) const |
| | Offset (in the global index) of G-vectors for a fine-grained distribution. More...
|
| |
| int | offset () const |
| | Offset (in the global index) of G-vectors for a fine-grained distribution for a current MPI rank. More...
|
| |
| int | skip_g0 () const |
| | Local starting index of G-vectors if G=0 is not counted. More...
|
| |
| int | num_shells () const |
| | Return number of G-vector shells. More...
|
| |
| template<index_domain_t idx_t> |
| r3::vector< int > | gvec (int ig__) const |
| | Return G vector in fractional coordinates. More...
|
| |
| template<index_domain_t idx_t> |
| r3::vector< double > | gkvec (int ig__) const |
| | Return G+k vector in fractional coordinates. More...
|
| |
| template<index_domain_t idx_t> |
| r3::vector< double > | gvec_cart (int ig__) const |
| | Return G vector in Cartesian coordinates. More...
|
| |
| template<index_domain_t idx_t> |
| r3::vector< double > | gkvec_cart (int ig__) const |
| | Return G+k vector in fractional coordinates. More...
|
| |
| int | shell (int ig__) const |
| | Return index of the G-vector shell by the G-vector index. More...
|
| |
| int | shell (r3::vector< int > const &G__) const |
| |
| double | shell_len (int igs__) const |
| | Return length of the G-vector shell. More...
|
| |
| std::vector< double > | shells_len () const |
| | Get lengths of all G-vector shells. More...
|
| |
| template<index_domain_t idx_t> |
| double | gvec_len (int ig__) const |
| | Return length of the G-vector. More...
|
| |
| int | index_g12 (r3::vector< int > const &g1__, r3::vector< int > const &g2__) const |
| |
| std::pair< int, bool > | index_g12_safe (r3::vector< int > const &g1__, r3::vector< int > const &g2__) const |
| |
| int | index_by_gvec (r3::vector< int > const &G__) const |
| | Return a global G-vector index in the range [0, num_gvec) by the G-vector. More...
|
| |
| bool | reduced () const |
| |
| bool | bare () const |
| |
| int | num_zcol () const |
| | Return global number of z-columns. More...
|
| |
| int | num_zcol_local () const |
| | Return local number of z-columns. More...
|
| |
| z_column_descriptor const & | zcol (size_t idx__) const |
| |
| int | gvec_base_mapping (int igloc_base__) const |
| |
| int | num_gvec_shells_local () const |
| |
| double | gvec_shell_len_local (int idx__) const |
| |
| int | gvec_shell_idx_local (int igloc__) const |
| |
| auto const & | gvec_local () const |
| | Return local list of G-vectors. More...
|
| |
| auto | gvec_local (int rank__) const |
| | Return local list of G-vectors for a given rank. More...
|
| |
| auto & | gvec_tp () |
| |
| auto const & | gvec_tp () const |
| |
| auto & | gkvec_tp () |
| |
| auto const & | gkvec_tp () const |
| |
|
| r3::vector< double > | vk_ {0, 0, 0} |
| | k-vector of G+k. More...
|
| |
| double | Gmax_ {0} |
| | Cutoff for |G+k| vectors. More...
|
| |
| r3::matrix< double > | lattice_vectors_ |
| | Reciprocal lattice vectors. More...
|
| |
| mpi::Communicator | comm_ |
| | Total communicator which is used to distribute G or G+k vectors. More...
|
| |
| bool | reduce_gvec_ {false} |
| | Indicates that G-vectors are reduced by inversion symmetry. More...
|
| |
| bool | bare_gvec_ {true} |
| | True if this a list of G-vectors without k-point shift. More...
|
| |
| int | num_gvec_ {0} |
| | Total number of G-vectors. More...
|
| |
| sddk::mdarray< uint32_t, 1 > | gvec_full_index_ |
| | Mapping between G-vector index [0:num_gvec_) and a full index. More...
|
| |
| sddk::mdarray< int, 1 > | gvec_shell_ |
| | Index of the shell to which the given G-vector belongs. More...
|
| |
| int | num_gvec_shells_ |
| | Number of G-vector shells (groups of G-vectors with the same length). More...
|
| |
| sddk::mdarray< double, 1 > | gvec_shell_len_ |
| | Radii (or lengths) of G-vector shells in a.u.^-1. More...
|
| |
| int | num_gvec_shells_local_ |
| | Local number of G-vector shells for the local number of G-vectors. More...
|
| |
| std::vector< double > | gvec_shell_len_local_ |
| | Radii of G-vector shells in the local index counting [0, num_gvec_shells_local) More...
|
| |
| std::vector< int > | gvec_shell_idx_local_ |
| | Mapping between local index of G-vector and local G-shell index. More...
|
| |
| sddk::mdarray< int, 3 > | gvec_index_by_xy_ |
| |
| std::vector< z_column_descriptor > | z_columns_ |
| | Global list of non-zero z-columns. More...
|
| |
| mpi::block_data_descriptor | gvec_distr_ |
| | Fine-grained distribution of G-vectors. More...
|
| |
| mpi::block_data_descriptor | zcol_distr_ |
| | Fine-grained distribution of z-columns. More...
|
| |
| Gvec const * | gvec_base_ {nullptr} |
| | Set of G-vectors on which the current G-vector distribution can be based. More...
|
| |
| sddk::mdarray< int, 1 > | gvec_base_mapping_ |
| | Mapping between current and base G-vector sets. More...
|
| |
| sddk::mdarray< int, 2 > | gvec_ |
| | Lattice coordinates of a local set of G-vectors. More...
|
| |
| sddk::mdarray< double, 2 > | gkvec_ |
| | Lattice coordinates of a local set of G+k-vectors. More...
|
| |
| sddk::mdarray< double, 2 > | gvec_cart_ |
| | Cartiesian coordinaes of a local set of G-vectors. More...
|
| |
| sddk::mdarray< double, 2 > | gkvec_cart_ |
| | Cartesian coordinaes of a local set of G+k-vectors. More...
|
| |
| sddk::mdarray< double, 1 > | gvec_len_ |
| | Length of the local fraction of G-vectors. More...
|
| |
| sddk::mdarray< double, 2 > | gvec_tp_ |
| |
| sddk::mdarray< double, 2 > | gkvec_tp_ |
| |
| int | offset_ {-1} |
| | Offset in the global index for the local part of G-vectors. More...
|
| |
| int | count_ {-1} |
| | Local number of G-vectors. More...
|
| |
| int | num_zcol_local_ {-1} |
| | Local number of z-columns. More...
|
| |
| double | sym_tol_ {1e-6} |
| | Symmetry tolerance of the real-space lattice. More...
|
| |
A set of G-vectors for FFTs and G+k basis functions.
Current implemntation supports up to 2^12 (4096) z-dimension of the FFT grid and 2^20 (1048576) number of z-columns. The order of z-sticks and G-vectors is not fixed and depends on the number of MPI ranks used for the parallelization.
Definition at line 129 of file gvec.hpp.