ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
container::kernels::lapack_hegvx< T, Device > Struct Template Reference

#include <lapack.h>

Collaboration diagram for container::kernels::lapack_hegvx< T, Device >:

Public Types

using Real = typename GetTypeReal< T >::type
 

Public Member Functions

void operator() (const int n, const int lda, T *Mat_A, T *Mat_B, const int m, Real *eigen_val, T *eigen_vec)
 

Member Typedef Documentation

◆ Real

template<typename T , typename Device >
using container::kernels::lapack_hegvx< T, Device >::Real = typename GetTypeReal<T>::type

Member Function Documentation

◆ operator()()

template<typename T , typename Device >
void container::kernels::lapack_hegvx< T, Device >::operator() ( const int  n,
const int  lda,
T Mat_A,
T Mat_B,
const int  m,
Real eigen_val,
T eigen_vec 
)

@ brief hegvx 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 hegvx interface, and the CUDA version is implemented through the evd interface and acquires the first m eigenpairs

hegvx 'V' 'I' 'U' is used to compute the first m eigenpairs of the problem

Parameters
nThe order of the matrices A and B. n >= 0.
ldaThe leading dimension of the array A and B. lda >= max(1, n).
AOn entry, the Hermitian matrix A. On exit, if info = 0, A contains the matrix Z of eigenvectors.
BOn entry, the Hermitian positive definite matrix B. On exit, the triangular factor from the Cholesky factorization of B.
mThe number of eigenvalues and eigenvectors to be found. 0 < m <= n.
eigen_valThe first m eigenvalues in ascending order.
eigen_vecThe first m columns contain the orthonormal eigenvectors of the matrix A corresponding to the selected eigenvalues.
Note
See LAPACK ZHEGVX doc for more details. This routine allocates auxiliary memory inside to prevent input matrix from being destroyed.

The documentation for this struct was generated from the following file: