SIRIUS 7.5.0
Electronic structure library and applications
|
#include <inverse_overlap.hpp>
Inherits sirius::local::Overlap_operator.
Public Member Functions | |
InverseS_k (Simulation_context &simulation_context, const Q_operator< double > &q_op, const Beta_projectors_base< double > &bp, int ispn) | |
sddk::mdarray< numeric_t, 2 > | apply (const sddk::mdarray< numeric_t, 2 > &X, sddk::memory_t pm=sddk::memory_t::none) |
void | apply (sddk::mdarray< numeric_t, 2 > &Y, const sddk::mdarray< numeric_t, 2 > &X, sddk::memory_t pm=sddk::memory_t::none) |
Public Member Functions inherited from sirius::local::Overlap_operator | |
Overlap_operator (Simulation_context &simulation_context, int n) | |
const Simulation_context & | ctx () const |
int | size () const |
global dimension of the operator More... | |
Public Attributes | |
const std::string | label {"inverse overlap"} |
Private Member Functions | |
void | initialize (const Beta_projectors_base< double > &bp) |
Private Attributes | |
const Q_operator< double > & | q_op_ |
const Beta_projectors_base< double > & | bp_ |
const int | ispn_ |
sddk::mdarray< numeric_t, 2 > | LU_ |
sddk::mdarray< int, 1 > | ipiv_ |
Additional Inherited Members | |
Protected Attributes inherited from sirius::local::Overlap_operator | |
Simulation_context & | ctx_ |
int | n_ |
Ref: 10.1016/j.cpc.2005.07.011 Electronic energy minimisation with ultrasoft pseudopotentials Hasnip & Pickard
Definition at line 103 of file inverse_overlap.hpp.
|
inline |
Definition at line 106 of file inverse_overlap.hpp.
sddk::mdarray< numeric_t, 2 > sirius::InverseS_k< numeric_t >::apply | ( | const sddk::mdarray< numeric_t, 2 > & | X, |
sddk::memory_t | pm = sddk::memory_t::none |
||
) |
apply wfct computes (X + Beta*P*Beta^H*X) where P = -Q*(I + B*Q)⁻¹
Definition at line 257 of file inverse_overlap.hpp.
void sirius::InverseS_k< numeric_t >::apply | ( | sddk::mdarray< numeric_t, 2 > & | Y, |
const sddk::mdarray< numeric_t, 2 > & | X, | ||
sddk::memory_t | pm = sddk::memory_t::none |
||
) |
apply wfct computes (X + Beta*P*Beta^H*X) where P = -Q*(I + B*Q)⁻¹
Definition at line 194 of file inverse_overlap.hpp.
|
private |
Definition at line 159 of file inverse_overlap.hpp.
const std::string sirius::InverseS_k< numeric_t >::label {"inverse overlap"} |
Definition at line 121 of file inverse_overlap.hpp.
|
private |
Definition at line 125 of file inverse_overlap.hpp.
|
private |
Definition at line 126 of file inverse_overlap.hpp.
|
private |
Definition at line 127 of file inverse_overlap.hpp.
|
private |
Definition at line 129 of file inverse_overlap.hpp.
|
private |
Definition at line 130 of file inverse_overlap.hpp.