elpa_cholesky - Man Page
do a Cholesky factorization of a real symmetric or complex hermitian matrix also exists in explicit form elpa_cholesky_double, elpa_cholesky_float, elpa_cholesky_double_complex, elpa_cholesky_float_complex
Synopsis
Fortran Interface
use elpa
class(elpa_t), pointer :: elpa
call elpa%cholesky (a, error)
With the definitions of the input and output variables:
- datatype :: a:canalsobeadevicepointeroftype(c_ptr)
The matrix a which should be decomposed. 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)
C Interface
#include <elpa/elpa.h>
elpa_t handle;
void elpa_cholesky(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;canalsobeadevicepointer
The matrix which should be decomposed. 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
Compute the Cholesky decomposition 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_eigenvalues(3) elpa_eigenvectors(3) elpa_invert_triangular(3) elpa_solve_tridiagonal(3) elpa_hermitian_multiply(3) elpa_uninit(3) elpa_deallocate(3)
Referenced By
elpa2_print_kernels(1), elpa_allocate(3), elpa_deallocate(3), elpa_eigenvalues(3), elpa_eigenvalues_double(3), elpa_eigenvalues_double_complex(3), elpa_eigenvalues_float(3), elpa_eigenvalues_float_complex(3), elpa_eigenvectors(3), elpa_eigenvectors_double(3), elpa_eigenvectors_double_complex(3), elpa_eigenvectors_float(3), elpa_eigenvectors_float_complex(3), elpa_generalized_eigenvalues(3), elpa_generalized_eigenvectors(3), elpa_set(3), elpa_setup(3), elpa_skew_eigenvalues(3), elpa_skew_eigenvectors(3), elpa_solve_tridiagonal(3), elpa_uninit(3).