elpa_eigenvalues man page

elpa_eigenvalues ā€” computes the eigenvalues of a real symmetric or complex hermitian matrix

Synopsis

Fortran Interface

use elpa
class(elpa_t), pointer :: elpa

call elpa%eigenvalues (a, ev, error)

With the definitions of the input and output variables:

class(elpa_t) :: elpa Ā ! returns an instance of the ELPA object

datatype :: a

The matrix a for which the eigenvalues should be computed. The dimensions of matrix a must be set BEFORE with the methods elpa_set(3) and elpa_setup(3). The datatype of the matrix can be one of "real(kind=c_double)", "real(kind=c_float)", "complex(kind=c_double)", or "complex(kind=c_float)"

datatype :: ev

The vector ev where the eigenvalues will be stored in ascending order. The datatype of the vector ev can be either "real(kind=c_double)", or "real(kind=c_float)", depending of the datatype of the matrix. Note that complex hermitian matrices also have real valued eigenvalues.

integer, optional :: error

The return error code of the function. Should be "ELPA_OK". The error code can be querried with the function elpa_strerr(3)

C Interface

#include <elpa/elpa.h>
elpa_t handle;

void elpa_eigenvalues(elpa_t handle, datatype *a, datatype *ev, int *error);

With the definitions of the input and output variables:

elpa_t handle;

The handle to the ELPA object

datatype *a;

The matrix a for which the eigenvalues should be computed. The dimensions of the matrix must be set BEFORE with the methods elpa_set(3) and elpa_setup(3). The datatype can be one of "double", "float", "double complex", or "float complex".

datatype *ev;

The storage for the computed eigenvalues. Eigenvalues will be stored in ascendig order. The datatype can be either "double" or "float". Note that the eigenvalues of complex hermitian matrices are also real.

int *error;

The error code of the function. Should be "ELPA_OK". The error codes can be querried with elpa_strerr(3)

Description

Compute the eigenvalues of a real symmtric or complex hermitian matrix.The functions elpa_init(3), elpa_allocate(3), elpa_set(3), and elpa_setup(3) must be called BEFORE elpa_eigenvalues can be called.

See Also

elpa2_print_kernels(1) elpa_init(3) elpa_allocate(3) elpa_set(3) elpa_setup(3) elpa_strerr(3) elpa_eigenvectors(3) elpa_cholesky(3) elpa_invert_triangular(3) elpa_solve_tridiagonal(3) elpa_eigenvalues(3) elpa_uninit(3) elpa_deallocate(3)

Referenced By

elpa2_print_kernels(1), elpa_allocate(3), elpa_cholesky(3), elpa_deallocate(3), elpa_eigenvectors(3), elpa_hermitian_multiply(3), elpa_init(3), elpa_invert_triangular(3), elpa_set(3), elpa_setup(3), elpa_solve_tridiagonal(3), elpa_uninit(3).

Sat Jul 15 2017 ELPA