1elpa_eigenvalues_double(3) Library Functions Manual elpa_eigenvalues_double(3)
2
3
4
6 elpa_eigenvalues_double - computes the eigenvalues of a real double-
7 precision symmetric matrix
8
9
11 FORTRAN INTERFACE
12 use elpa
13 class(elpa_t), pointer :: elpa
14
15 call elpa%eigenvalues_double (a, ev, error)
16
17 With the definitions of the input and output variables:
18
19 class(elpa_t) :: elpa ! returns an instance of the ELPA object
20
21 datatype :: a
22 The matrix a for which the eigenvalues should be computed. The
23 dimensions of matrix a must be set BEFORE with the methods
24 elpa_set(3) and elpa_setup(3). The datatype of the matrix must
25 be real(kind=c_double). The matrix has to be symmetric this is
26 not checked by the routine. In case of a GPU build a can be a
27 device pointer of type "type(c_ptr) to a matrix a on the device
28 memory.
29
30 datatype :: ev
31 The vector ev where the eigenvalues will be stored in ascending
32 order. The datatype of the vector ev must be
33 "real(kind=c_double)". In case of a GPU build ev can be a device
34 pointer of type "type(c_ptr) to the vector of eigenvalues in the
35 device memory
36
37 integer, optional :: error
38 The return error code of the function. Should be "ELPA_OK". The
39 error code can be querried with the function elpa_strerr(3)
40
41
42 C INTERFACE
43 #include <elpa/elpa.h>
44 elpa_t handle;
45
46 void elpa_eigenvalues_double(elpa_t handle, datatype *a, datatype *ev,
47 int *error);
48
49 With the definitions of the input and output variables:
50
51
52 elpa_t handle;
53 The handle to the ELPA object
54
55 datatype *a;
56 The matrix a for which the eigenvalues should be computed. The
57 dimensions of the matrix must be set BEFORE with the methods
58 elpa_set(3) and elpa_setup(3). The datatype must be "double".
59 The matrix has to be symmetric, this is not checked by the
60 routine. In case of a GPU build a can be a device pointer to a
61 matrix a on the device memory.
62
63 datatype *ev;
64 The storage for the computed eigenvalues. Eigenvalues will be
65 stored in ascendig order. The datatype must be "double". In case
66 of a GPU build ev can be a device pointer to the vectors of
67 eigenvalues in the device memory.
68
69
70 int *error;
71 The error code of the function. Should be "ELPA_OK". The error
72 codes can be querried with elpa_strerr(3)
73
74
76 Compute the eigenvalues of a double precision real symmetric matrix.
77 The functions elpa_init(3), elpa_allocate(3), elpa_set(3), and
78 elpa_setup(3) must be called BEFORE elpa_eigenvalues can be called.
79
81 elpa2_print_kernels(1) elpa_init(3) elpa_allocate(3) elpa_set(3)
82 elpa_setup(3) elpa_strerr(3) elpa_skew_eigenvalues(3)
83 elpa_eigenvectors(3) elpa_skew_eigenvectors(3) elpa_cholesky(3)
84 elpa_invert_triangular(3) elpa_solve_tridiagonal(3) elpa_eigenvalues(3)
85 elpa_uninit(3) elpa_deallocate(3)
86
87
88
89
90ELPA Wed Sep 1 2021 elpa_eigenvalues_double(3)