ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
|
#include <dngvd_op.h>
Public Types | |
using | Real = typename GetTypeReal< T >::type |
Public Member Functions | |
void | operator() (const Device *d, const int nstart, const int ldh, const T *A, const int m, Real *W, T *V) |
DNEVX computes the first m eigenvalues and their corresponding eigenvectors of a complex generalized Hermitian-definite eigenproblem. | |
using hsolver::dnevx_op< T, Device >::Real = typename GetTypeReal<T>::type |
void hsolver::dnevx_op< T, Device >::operator() | ( | const Device * | d, |
const int | nstart, | ||
const int | ldh, | ||
const T * | A, | ||
const int | m, | ||
Real * | W, | ||
T * | V | ||
) |
DNEVX computes the first m eigenvalues and their corresponding eigenvectors of a complex generalized Hermitian-definite eigenproblem.
In this op, the CPU version is implemented through the evx
interface, and the CUDA version is implemented through the evd
interface and acquires the first m eigenpairs. API doc:
Input Parameters
d | : the type of device |
nstart | : the number of cols of the matrix |
ldh | : the number of rows of the matrix |
A | : the hermitian matrix A in A x=lambda B x (row major) Output Parameter |
W | : calculated eigenvalues |
V | : calculated eigenvectors (row major) |