elpa_invert_triangular - Invert an upper triangular matrix
use elpa
class(elpa_t), pointer :: elpa
call elpa%invert_triangular (a, error)
With the definitions of the input and output variables:
- datatype :: a
- The matrix a which should be inverted. 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)"
- 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)
#include <elpa/elpa.h>
elpa_t handle;
void elpa_invert_triangular(elpa_t handle,
datatype *a, int *error);
With the definitions of the input and output variables:
- elpa_t handle;
- The handle to the ELPA object
- datatype *a;
- The matrix which should be inverted. 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)
Inverts an upper triangular real or complex 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.
elpa2_print_kernels(1) elpa_init(3)
elpa_allocate(3) elpa_set(3) elpa_setup(3)
elpa_strerr(3) elpa_eigenvalues(3) elpa_eigenvectors(3)
elpa_choleksy(3) elpa_solve_tridiagonal(3)
elpa_hermitian_multiply(3) elpa_uninit(3)
elpa_deallocate(3)