SIRIUS 7.5.0
Electronic structure library and applications
|
Inherits sirius::la::Eigensolver.
Public Member Functions | |
Eigensolver_elpa (int stage__) | |
int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< double > &A__, dmatrix< double > &B__, double *eval__, dmatrix< double > &Z__) override |
Solve a generalized eigen-value problem for N lowest eigen-pairs. More... | |
int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< std::complex< double > > &A__, dmatrix< std::complex< double > > &B__, double *eval__, dmatrix< std::complex< double > > &Z__) override |
Solve a generalized eigen-value problem for N lowest eigen-pairs. More... | |
int | solve (ftn_int matrix_size__, dmatrix< double > &A__, dmatrix< double > &B__, double *eval__, dmatrix< double > &Z__) override |
Solve a generalized eigen-value problem for all eigen-pairs. More... | |
int | solve (ftn_int matrix_size__, dmatrix< std::complex< double > > &A__, dmatrix< std::complex< double > > &B__, double *eval__, dmatrix< std::complex< double > > &Z__) override |
Solve a generalized eigen-value problem for all eigen-pairs. More... | |
int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< double > &A__, double *eval__, dmatrix< double > &Z__) override |
Solve a standard eigen-value problem for N lowest eigen-pairs. More... | |
int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< std::complex< double > > &A__, double *eval__, dmatrix< std::complex< double > > &Z__) override |
Solve a standard eigen-value problem for N lowest eigen-pairs. More... | |
int | solve (ftn_int matrix_size__, dmatrix< double > &A__, double *eval__, dmatrix< double > &Z__) override |
Solve a standard eigen-value problem for all eigen-pairs. More... | |
int | solve (ftn_int matrix_size__, dmatrix< std::complex< double > > &A__, double *eval__, dmatrix< std::complex< double > > &Z__) override |
Solve a standard eigen-value problem for all eigen-pairs. More... | |
Public Member Functions inherited from sirius::la::Eigensolver | |
Eigensolver (ev_solver_t type__, bool is_parallel__, sddk::memory_t host_memory_t__, sddk::memory_t data_memory_t__) | |
Constructor. More... | |
virtual | ~Eigensolver () |
Destructor. More... | |
virtual int | solve (ftn_int matrix_size__, dmatrix< double > &A__, double *eval__, dmatrix< double > &Z__) |
Solve a standard eigen-value problem for all eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, dmatrix< std::complex< double > > &A__, double *eval__, dmatrix< std::complex< double > > &Z__) |
Solve a standard eigen-value problem for all eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, dmatrix< float > &A__, float *eval__, dmatrix< float > &Z__) |
Solve a standard eigen-value problem for all eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, dmatrix< std::complex< float > > &A__, float *eval__, dmatrix< std::complex< float > > &Z__) |
Solve a standard eigen-value problem for all eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< double > &A__, double *eval__, dmatrix< double > &Z__) |
Solve a standard eigen-value problem of a sub-matrix for N lowest eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< std::complex< double > > &A__, double *eval__, dmatrix< std::complex< double > > &Z__) |
Solve a standard eigen-value problem of a sub-matrix for N lowest eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< float > &A__, float *eval__, dmatrix< float > &Z__) |
Solve a standard eigen-value problem of a sub-matrix for N lowest eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< std::complex< float > > &A__, float *eval__, dmatrix< std::complex< float > > &Z__) |
Solve a standard eigen-value problem of a sub-matrix for N lowest eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, dmatrix< double > &A__, dmatrix< double > &B__, double *eval__, dmatrix< double > &Z__) |
Solve a generalized eigen-value problem for all eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, dmatrix< std::complex< double > > &A__, dmatrix< std::complex< double > > &B__, double *eval__, dmatrix< std::complex< double > > &Z__) |
Solve a generalized eigen-value problem for all eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, dmatrix< float > &A__, dmatrix< float > &B__, float *eval__, dmatrix< float > &Z__) |
Solve a generalized eigen-value problem for all eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, dmatrix< std::complex< float > > &A__, dmatrix< std::complex< float > > &B__, float *eval__, dmatrix< std::complex< float > > &Z__) |
Solve a generalized eigen-value problem for all eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< double > &A__, dmatrix< double > &B__, double *eval__, dmatrix< double > &Z__) |
Solve a generalized eigen-value problem for N lowest eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< std::complex< double > > &A__, dmatrix< std::complex< double > > &B__, double *eval__, dmatrix< std::complex< double > > &Z__) |
Solve a generalized eigen-value problem for N lowest eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< float > &A__, dmatrix< float > &B__, float *eval__, dmatrix< float > &Z__) |
Solve a generalized eigen-value problem for N lowest eigen-pairs. More... | |
virtual int | solve (ftn_int matrix_size__, ftn_int nev__, dmatrix< std::complex< float > > &A__, dmatrix< std::complex< float > > &B__, float *eval__, dmatrix< std::complex< float > > &Z__) |
Solve a generalized eigen-value problem for N lowest eigen-pairs. More... | |
bool | is_parallel () const |
Parallel or sequential solver. More... | |
sddk::memory_t | host_memory_t () const |
Type of host memory, required by the solver. More... | |
sddk::memory_t | data_memory_t () const |
Type of input memory for the solver. More... | |
ev_solver_t | type () const |
Type of eigen-solver. More... | |
Static Public Member Functions | |
static void | initialize () |
static void | finalize () |
Private Attributes | |
int | stage_ |
Additional Inherited Members | |
Protected Attributes inherited from sirius::la::Eigensolver | |
ev_solver_t | ev_solver_type_ |
Type of the eigen-value solver. More... | |
const std::string | error_msg_not_implemented = "solver is not implemented" |
Common error message. More... | |
bool | is_parallel_ {false} |
True if solver is MPI parallel. More... | |
sddk::memory_t | host_memory_t_ {sddk::memory_t::none} |
Type of host memory needed for the solver. More... | |
sddk::memory_t | data_memory_t_ {sddk::memory_t::none} |
Type of input data memory. More... | |
Definition at line 389 of file eigenproblem.hpp.
sirius::la::Eigensolver_elpa::Eigensolver_elpa | ( | int | stage__ | ) |
Definition at line 44 of file eigenproblem.cpp.
|
static |
Definition at line 53 of file eigenproblem.cpp.
|
static |
Definition at line 60 of file eigenproblem.cpp.
|
overridevirtual |
Solve a generalized eigen-value problem for N lowest eigen-pairs.
Reimplemented from sirius::la::Eigensolver.
Definition at line 67 of file eigenproblem.cpp.
|
overridevirtual |
Solve a generalized eigen-value problem for N lowest eigen-pairs.
Reimplemented from sirius::la::Eigensolver.
Definition at line 130 of file eigenproblem.cpp.
|
overridevirtual |
Solve a generalized eigen-value problem for all eigen-pairs.
Reimplemented from sirius::la::Eigensolver.
Definition at line 192 of file eigenproblem.cpp.
|
overridevirtual |
Solve a generalized eigen-value problem for all eigen-pairs.
Reimplemented from sirius::la::Eigensolver.
Definition at line 198 of file eigenproblem.cpp.
|
overridevirtual |
Solve a standard eigen-value problem for N lowest eigen-pairs.
Reimplemented from sirius::la::Eigensolver.
Definition at line 205 of file eigenproblem.cpp.
|
overridevirtual |
Solve a standard eigen-value problem for N lowest eigen-pairs.
Reimplemented from sirius::la::Eigensolver.
Definition at line 247 of file eigenproblem.cpp.
|
overridevirtual |
Solve a standard eigen-value problem for all eigen-pairs.
Reimplemented from sirius::la::Eigensolver.
Definition at line 294 of file eigenproblem.cpp.
|
overridevirtual |
Solve a standard eigen-value problem for all eigen-pairs.
Reimplemented from sirius::la::Eigensolver.
Definition at line 300 of file eigenproblem.cpp.
|
private |
Definition at line 392 of file eigenproblem.hpp.