ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
Functions
elpa_generic.hpp File Reference
#include "elpa_new.h"
#include <complex>
Include dependency graph for elpa_generic.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void elpa_set (elpa_t handle, const char *name, int value, int *error)
 generic C method for elpa_set
 
void elpa_set (elpa_t handle, const char *name, double value, int *error)
 
void elpa_get (elpa_t handle, const char *name, int *value, int *error)
 generic C method for elpa_get
 
void elpa_get (elpa_t handle, const char *name, double *value, int *error)
 
void elpa_eigenvectors (const elpa_t handle, double *a, double *ev, double *q, int *error)
 generic C method for elpa_eigenvectors
 
void elpa_eigenvectors (const elpa_t handle, float *a, float *ev, float *q, int *error)
 
void elpa_eigenvectors (const elpa_t handle, std::complex< double > *a, double *ev, std::complex< double > *q, int *error)
 
void elpa_eigenvectors (const elpa_t handle, std::complex< float > *a, float *ev, std::complex< float > *q, int *error)
 
void elpa_skew_eigenvectors (const elpa_t handle, double *a, double *ev, double *q, int *error)
 generic C method for elpa_skew_eigenvectors
 
void elpa_skew_eigenvectors (const elpa_t handle, float *a, float *ev, float *q, int *error)
 
void elpa_generalized_eigenvectors (elpa_t handle, double *a, double *b, double *ev, double *q, int is_already_decomposed, int *error)
 generic C method for elpa_generalized_eigenvectors
 
void elpa_generalized_eigenvectors (elpa_t handle, float *a, float *b, float *ev, float *q, int is_already_decomposed, int *error)
 
void elpa_generalized_eigenvectors (elpa_t handle, std::complex< double > *a, std::complex< double > *b, double *ev, std::complex< double > *q, int is_already_decomposed, int *error)
 
void elpa_generalized_eigenvectors (elpa_t handle, std::complex< float > *a, std::complex< float > *b, float *ev, std::complex< float > *q, int is_already_decomposed, int *error)
 
void elpa_eigenvalues (elpa_t handle, double *a, double *ev, int *error)
 generic C method for elpa_eigenvalues
 
void elpa_eigenvalues (elpa_t handle, float *a, float *ev, int *error)
 
void elpa_eigenvalues (elpa_t handle, std::complex< double > *a, double *ev, int *error)
 
void elpa_eigenvalues (elpa_t handle, std::complex< float > *a, float *ev, int *error)
 
void elpa_skew_eigenvalues (elpa_t handle, double *a, double *ev, int *error)
 generic C method for elpa_skew_eigenvalues
 
void elpa_skew_eigenvalues (elpa_t handle, float *a, float *ev, int *error)
 
void elpa_cholesky (elpa_t handle, double *a, int *error)
 generic C method for elpa_cholesky
 
void elpa_cholesky (elpa_t handle, float *a, int *error)
 
void elpa_cholesky (elpa_t handle, std::complex< double > *a, int *error)
 
void elpa_cholesky (elpa_t handle, std::complex< float > *a, int *error)
 
void elpa_hermitian_multiply (elpa_t handle, char uplo_a, char uplo_c, int ncb, double *a, double *b, int nrows_b, int ncols_b, double *c, int nrows_c, int ncols_c, int *error)
 generic C method for elpa_hermitian_multiply
 
void elpa_hermitian_multiply (elpa_t handle, char uplo_a, char uplo_c, int ncb, float *a, float *b, int nrows_b, int ncols_b, float *c, int nrows_c, int ncols_c, int *error)
 
void elpa_hermitian_multiply (elpa_t handle, char uplo_a, char uplo_c, int ncb, std::complex< double > *a, std::complex< double > *b, int nrows_b, int ncols_b, std::complex< double > *c, int nrows_c, int ncols_c, int *error)
 
void elpa_hermitian_multiply (elpa_t handle, char uplo_a, char uplo_c, int ncb, std::complex< float > *a, std::complex< float > *b, int nrows_b, int ncols_b, std::complex< float > *c, int nrows_c, int ncols_c, int *error)
 
void elpa_invert_triangular (elpa_t handle, double *a, int *error)
 generic C method for elpa_invert_triangular
 
void elpa_invert_triangular (elpa_t handle, float *a, int *error)
 
void elpa_invert_triangular (elpa_t handle, std::complex< double > *a, int *error)
 
void elpa_invert_triangular (elpa_t handle, std::complex< float > *a, int *error)
 

Function Documentation

◆ elpa_cholesky() [1/4]

void elpa_cholesky ( elpa_t  handle,
double *  a,
int *  error 
)
inline

generic C method for elpa_cholesky

Parameters
handlehandle of the ELPA object, which defines the problem
afloat/double float complex/double complex pointer to matrix a, for which the cholesky factorizaion will be computed
erroron return the error code, which can be queried with elpa_strerr()
Returns
void
Here is the caller graph for this function:

◆ elpa_cholesky() [2/4]

void elpa_cholesky ( elpa_t  handle,
float *  a,
int *  error 
)
inline

◆ elpa_cholesky() [3/4]

void elpa_cholesky ( elpa_t  handle,
std::complex< double > *  a,
int *  error 
)
inline

◆ elpa_cholesky() [4/4]

void elpa_cholesky ( elpa_t  handle,
std::complex< float > *  a,
int *  error 
)
inline

◆ elpa_eigenvalues() [1/4]

void elpa_eigenvalues ( elpa_t  handle,
double *  a,
double *  ev,
int *  error 
)
inline

generic C method for elpa_eigenvalues

Parameters
handlehandle of the ELPA object, which defines the problem
afloat/double float complex/double complex pointer to matrix a
evon return: float/double pointer to eigenvalues
erroron return the error code, which can be queried with elpa_strerr()
Returns
void

◆ elpa_eigenvalues() [2/4]

void elpa_eigenvalues ( elpa_t  handle,
float *  a,
float *  ev,
int *  error 
)
inline

◆ elpa_eigenvalues() [3/4]

void elpa_eigenvalues ( elpa_t  handle,
std::complex< double > *  a,
double *  ev,
int *  error 
)
inline

◆ elpa_eigenvalues() [4/4]

void elpa_eigenvalues ( elpa_t  handle,
std::complex< float > *  a,
float *  ev,
int *  error 
)
inline

◆ elpa_eigenvectors() [1/4]

void elpa_eigenvectors ( const elpa_t  handle,
double *  a,
double *  ev,
double *  q,
int *  error 
)
inline

generic C method for elpa_eigenvectors

Parameters
handlehandle of the ELPA object, which defines the problem
afloat/double float complex/double complex pointer to matrix a
evon return: float/double pointer to eigenvalues
qon return: float/double float complex/double complex pointer to eigenvectors
erroron return the error code, which can be queried with elpa_strerr()
Returns
void
Here is the caller graph for this function:

◆ elpa_eigenvectors() [2/4]

void elpa_eigenvectors ( const elpa_t  handle,
float *  a,
float *  ev,
float *  q,
int *  error 
)
inline

◆ elpa_eigenvectors() [3/4]

void elpa_eigenvectors ( const elpa_t  handle,
std::complex< double > *  a,
double *  ev,
std::complex< double > *  q,
int *  error 
)
inline

◆ elpa_eigenvectors() [4/4]

void elpa_eigenvectors ( const elpa_t  handle,
std::complex< float > *  a,
float *  ev,
std::complex< float > *  q,
int *  error 
)
inline

◆ elpa_generalized_eigenvectors() [1/4]

void elpa_generalized_eigenvectors ( elpa_t  handle,
double *  a,
double *  b,
double *  ev,
double *  q,
int  is_already_decomposed,
int *  error 
)
inline

generic C method for elpa_generalized_eigenvectors

Parameters
handlehandle of the ELPA object, which defines the problem
afloat/double float complex/double complex pointer to matrix a
bfloat/double float complex/double complex pointer to matrix b
evon return: float/double pointer to eigenvalues
qon return: float/double float complex/double complex pointer to eigenvectors
is_already_decomposedset to 1, if b already decomposed by previous call to elpa_generalized
erroron return the error code, which can be queried with elpa_strerr()
Returns
void
Here is the caller graph for this function:

◆ elpa_generalized_eigenvectors() [2/4]

void elpa_generalized_eigenvectors ( elpa_t  handle,
float *  a,
float *  b,
float *  ev,
float *  q,
int  is_already_decomposed,
int *  error 
)
inline

◆ elpa_generalized_eigenvectors() [3/4]

void elpa_generalized_eigenvectors ( elpa_t  handle,
std::complex< double > *  a,
std::complex< double > *  b,
double *  ev,
std::complex< double > *  q,
int  is_already_decomposed,
int *  error 
)
inline

◆ elpa_generalized_eigenvectors() [4/4]

void elpa_generalized_eigenvectors ( elpa_t  handle,
std::complex< float > *  a,
std::complex< float > *  b,
float *  ev,
std::complex< float > *  q,
int  is_already_decomposed,
int *  error 
)
inline

◆ elpa_get() [1/2]

void elpa_get ( elpa_t  handle,
const char *  name,
double *  value,
int *  error 
)
inline

◆ elpa_get() [2/2]

void elpa_get ( elpa_t  handle,
const char *  name,
int *  value,
int *  error 
)
inline

generic C method for elpa_get

Parameters
handlehandle of the ELPA object for which a key/value pair should be queried
namethe name of the key
valueinteger/double value to be queried
erroron return the error code, which can be queried with elpa_strerr()
Returns
void

◆ elpa_hermitian_multiply() [1/4]

void elpa_hermitian_multiply ( elpa_t  handle,
char  uplo_a,
char  uplo_c,
int  ncb,
double *  a,
double *  b,
int  nrows_b,
int  ncols_b,
double *  c,
int  nrows_c,
int  ncols_c,
int *  error 
)
inline

generic C method for elpa_hermitian_multiply

Parameters
handlehandle of the ELPA object, which defines the problem
uplo_adescriptor for matrix a
uplo_cdescriptor for matrix c
ncbint
afloat/double float complex/double complex pointer to matrix a
bfloat/double float complex/double complex pointer to matrix b
nrows_bnumber of rows for matrix b
ncols_bnumber of cols for matrix b
cfloat/double float complex/double complex pointer to matrix c
nrows_cnumber of rows for matrix c
ncols_cnumber of cols for matrix c
erroron return the error code, which can be queried with elpa_strerr()
Returns
void

◆ elpa_hermitian_multiply() [2/4]

void elpa_hermitian_multiply ( elpa_t  handle,
char  uplo_a,
char  uplo_c,
int  ncb,
float *  a,
float *  b,
int  nrows_b,
int  ncols_b,
float *  c,
int  nrows_c,
int  ncols_c,
int *  error 
)
inline

◆ elpa_hermitian_multiply() [3/4]

void elpa_hermitian_multiply ( elpa_t  handle,
char  uplo_a,
char  uplo_c,
int  ncb,
std::complex< double > *  a,
std::complex< double > *  b,
int  nrows_b,
int  ncols_b,
std::complex< double > *  c,
int  nrows_c,
int  ncols_c,
int *  error 
)
inline

◆ elpa_hermitian_multiply() [4/4]

void elpa_hermitian_multiply ( elpa_t  handle,
char  uplo_a,
char  uplo_c,
int  ncb,
std::complex< float > *  a,
std::complex< float > *  b,
int  nrows_b,
int  ncols_b,
std::complex< float > *  c,
int  nrows_c,
int  ncols_c,
int *  error 
)
inline

◆ elpa_invert_triangular() [1/4]

void elpa_invert_triangular ( elpa_t  handle,
double *  a,
int *  error 
)
inline

generic C method for elpa_invert_triangular

Parameters
handlehandle of the ELPA object, which defines the problem
afloat/double float complex/double complex pointer to matrix a, which should be inverted
erroron return the error code, which can be queried with elpa_strerr()
Returns
void
Here is the caller graph for this function:

◆ elpa_invert_triangular() [2/4]

void elpa_invert_triangular ( elpa_t  handle,
float *  a,
int *  error 
)
inline

◆ elpa_invert_triangular() [3/4]

void elpa_invert_triangular ( elpa_t  handle,
std::complex< double > *  a,
int *  error 
)
inline

◆ elpa_invert_triangular() [4/4]

void elpa_invert_triangular ( elpa_t  handle,
std::complex< float > *  a,
int *  error 
)
inline

◆ elpa_set() [1/2]

void elpa_set ( elpa_t  handle,
const char *  name,
double  value,
int *  error 
)
inline

◆ elpa_set() [2/2]

void elpa_set ( elpa_t  handle,
const char *  name,
int  value,
int *  error 
)
inline

generic C method for elpa_set

Parameters
handlehandle of the ELPA object for which a key/value pair should be set
namethe name of the key
valueinteger/double value to be set for the key
erroron return the error code, which can be queried with elpa_strerr()
Returns
void
Here is the caller graph for this function:

◆ elpa_skew_eigenvalues() [1/2]

void elpa_skew_eigenvalues ( elpa_t  handle,
double *  a,
double *  ev,
int *  error 
)
inline

generic C method for elpa_skew_eigenvalues

Parameters
handlehandle of the ELPA object, which defines the problem
afloat/double float complex/double complex pointer to matrix a
evon return: float/double pointer to eigenvalues
erroron return the error code, which can be queried with elpa_strerr()
Returns
void

◆ elpa_skew_eigenvalues() [2/2]

void elpa_skew_eigenvalues ( elpa_t  handle,
float *  a,
float *  ev,
int *  error 
)
inline

◆ elpa_skew_eigenvectors() [1/2]

void elpa_skew_eigenvectors ( const elpa_t  handle,
double *  a,
double *  ev,
double *  q,
int *  error 
)
inline

generic C method for elpa_skew_eigenvectors

Parameters
handlehandle of the ELPA object, which defines the problem
afloat/double float complex/double complex pointer to matrix a
evon return: float/double pointer to eigenvalues
qon return: float/double float complex/double complex pointer to eigenvectors
erroron return the error code, which can be queried with elpa_strerr()
Returns
void

◆ elpa_skew_eigenvectors() [2/2]

void elpa_skew_eigenvectors ( const elpa_t  handle,
float *  a,
float *  ev,
float *  q,
int *  error 
)
inline