elpa_solve_tridiagonal man page

elpa_solve_tridiagonal — computes the eigenvalue problem for real symmetric tridiagonal matrix

Synopsis

Fortran Interface

use elpa
class(elpa_t), pointer :: elpa

call elpa%eigenvectors (d, e, q, error)

With the definitions of the input and output variables:

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

datatype :: d

The diagonal elements of a matrix whose dimensions have been defined in elpa_setup(3). On exist the eigenvalues are stored in this 1d-array. The datatype of the diagonal elements can either be "real(kind=c_double)" or "real(kind=c_float)".

datatype :: e

The offdiagonal elements of the matrix. The datatype of the diagonal elements can either be "real(kind=c_double)" or "real(kind=c_float)". datatype :: q The storage space for the computed eigenvectors. The datatype of the matrix can be either "real(kind=c_double)" or "real(kind=c_float)".

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 *d, datatype *e, datatype *q, int *error);

With the definitions of the input and output variables:

elpa_t handle;

The handle to the ELPA object

datatype *d;

The diagonal elements of the matrix. The dimensions of the matrix must be set BEFORE with elpa_setup(3). On exist the eigenvalues are stored in d. The datatype can be one of "double" or "float".

datatype *e;

The offdiagonal elements of the matrix. The datatype can be one of "double" or "float".

datatype *q;

The storage space for the computed eigenvectors. 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".

int *error;

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

Description

Computes the eigenvalue problem of a real symmtric tridiagonal matrix.The functions elpa_init(3), elpa_allocate(3), elpa_set(3), and elpa_setup(3) must be called BEFORE elpa_solve_tridiagonal 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_eigenvalues(3) elpa_cholesky(3) elpa_invert_triangular(3) elpa_hermitian_multiply(3) elpa_uninit(3) elpa_deallocate(3)

Referenced By

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

Sat Jul 15 2017 ELPA