|
SIRIUS 7.5.0
Electronic structure library and applications
|
#include <beta_projectors_base.hpp>
Public Types | |
| typedef std::complex< T > | complex_t |
| typedef sddk::mdarray< complex_t, 3 > | array_t |
Public Member Functions | |
| Beta_projector_generator (Simulation_context &ctx, array_t const &pw_coeffs_t_host, sddk::matrix< std::complex< T > > const &beta_pw_all, sddk::device_t processing_unit, std::vector< beta_chunk_t > const &beta_chunks, fft::Gvec const &gkvec, sddk::mdarray< double, 2 > const &gkvec_coord, int num_gkvec_loc) | |
| void | generate (beta_projectors_coeffs_t< T > &coeffs, int ichunk, int j) const |
| void | generate (beta_projectors_coeffs_t< T > &coeffs, int ichunk) const |
| beta_projectors_coeffs_t< T > | prepare () const |
| Simulation_context & | ctx () |
| int | num_chunks () const |
| const auto & | chunks () const |
| auto | device_t () const -> sddk::device_t |
Private Attributes | |
| Simulation_context & | ctx_ |
| Simulation context. More... | |
| array_t const & | pw_coeffs_t_host_ |
| Beta-projectors for atom-types. More... | |
| array_t | pw_coeffs_t_device_ |
| Beta-projectors for atom-types on device. More... | |
| sddk::matrix< complex_t > const & | beta_pw_all_atoms_ |
| Precomputed beta coefficients on CPU. More... | |
| sddk::device_t | processing_unit_ |
| Processing unit. More... | |
| std::vector< beta_chunk_t > const & | beta_chunks_ |
| Chunk descriptors. More... | |
| fft::Gvec const & | gkvec_ |
| G+k vectors. More... | |
| sddk::mdarray< double, 2 > const & | gkvec_coord_ |
| Coordinates of G+k vectors. More... | |
| int | num_gkvec_loc_ |
| Local number of G+k vectors. More... | |
| int | max_num_beta_ |
| Maximum number of beta-projectors. More... | |
Generates beta projector PW coefficients and holds GPU memory phase-factor independent coefficients of |> functions for atom types.
Definition at line 174 of file beta_projectors_base.hpp.
| typedef std::complex<T> sirius::Beta_projector_generator< T >::complex_t |
Definition at line 177 of file beta_projectors_base.hpp.
| typedef sddk::mdarray<complex_t, 3> sirius::Beta_projector_generator< T >::array_t |
Definition at line 178 of file beta_projectors_base.hpp.
| sirius::Beta_projector_generator< T >::Beta_projector_generator | ( | Simulation_context & | ctx, |
| array_t const & | pw_coeffs_t_host, | ||
| sddk::matrix< std::complex< T > > const & | beta_pw_all, | ||
| sddk::device_t | processing_unit, | ||
| std::vector< beta_chunk_t > const & | beta_chunks, | ||
| fft::Gvec const & | gkvec, | ||
| sddk::mdarray< double, 2 > const & | gkvec_coord, | ||
| int | num_gkvec_loc | ||
| ) |
Definition at line 234 of file beta_projectors_base.hpp.
| void sirius::Beta_projector_generator< T >::generate | ( | beta_projectors_coeffs_t< T > & | coeffs, |
| int | ichunk, | ||
| int | j | ||
| ) | const |
Definition at line 283 of file beta_projectors_base.cpp.
| void sirius::Beta_projector_generator< T >::generate | ( | beta_projectors_coeffs_t< T > & | coeffs, |
| int | ichunk | ||
| ) | const |
Definition at line 253 of file beta_projectors_base.cpp.
| beta_projectors_coeffs_t< T > sirius::Beta_projector_generator< T >::prepare |
Definition at line 265 of file beta_projectors_base.hpp.
|
inline |
Definition at line 191 of file beta_projectors_base.hpp.
|
inline |
Definition at line 195 of file beta_projectors_base.hpp.
|
inline |
Definition at line 200 of file beta_projectors_base.hpp.
|
inline |
Definition at line 205 of file beta_projectors_base.hpp.
|
private |
Simulation context.
Definition at line 212 of file beta_projectors_base.hpp.
|
private |
Beta-projectors for atom-types.
Definition at line 214 of file beta_projectors_base.hpp.
|
private |
Beta-projectors for atom-types on device.
Definition at line 216 of file beta_projectors_base.hpp.
|
private |
Precomputed beta coefficients on CPU.
Definition at line 218 of file beta_projectors_base.hpp.
|
private |
Processing unit.
Definition at line 220 of file beta_projectors_base.hpp.
|
private |
Chunk descriptors.
Definition at line 222 of file beta_projectors_base.hpp.
|
private |
G+k vectors.
Definition at line 224 of file beta_projectors_base.hpp.
|
private |
Coordinates of G+k vectors.
Definition at line 226 of file beta_projectors_base.hpp.
|
private |
Local number of G+k vectors.
Definition at line 228 of file beta_projectors_base.hpp.
|
private |
Maximum number of beta-projectors.
Definition at line 230 of file beta_projectors_base.hpp.