1elpa_eigenvectors_double_comLpilberxa(r3y)FunctionselMpaan_ueailgenvectors_double_complex(3)
2
3
4

NAME

6       elpa_eigenvectors_double_complex - computes the eigenvalues and (part
7       of) the eigenvector spectrum for a complex hermitian matrix
8
9

SYNOPSIS

11   FORTRAN INTERFACE
12       use elpa
13       class(elpa_t), pointer :: elpa
14
15       call elpa%eigenvectors_double_complex (a, ev, q, 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 "complex(kind=c_double_complex)". The matrix has to be
26              hermitian, this is not checked by the routine. In case of a GPU
27              build a can be a device pointer 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 to the vectors of eigenvalues in the device memory.
35
36       datatype :: q
37              The storage space for the computed eigenvectors. The dimensions
38              of matrix a must be set BEFORE with the methods elpa_set(3) and
39              elpa_setup(3). The datatype of the matrix must be
40              "complex(kind=c_double_complex)". In case of a GPU build q can
41              be a device pointer to a matrix q on the device memory.
42
43       integer, optional :: error
44              The return error code of the function. Should be "ELPA_OK". The
45              error code can be querried with the function elpa_strerr(3)
46
47
48   C INTERFACE
49       #include <elpa/elpa.h>
50       elpa_t handle;
51
52       void elpa_eigenvectors_double_complex(elpa_t handle, datatype *a,
53       datatype *ev, datatype *q, int *error);
54
55       With the definitions of the input and output variables:
56
57
58       elpa_t handle;
59              The handle to the ELPA object
60
61       datatype *a;
62              The matrix a for which the eigenvalues should be computed. The
63              dimensions of the matrix must be set BEFORE with the methods
64              elpa_set(3) and elpa_setup(3). The datatype must be "double
65              complex". The matrix has to be hermitian, this is not checked by
66              the routine. In case of a GPU build a can be a device pointer to
67              a matrix a on the device memory.
68
69       datatype *ev;
70              The storage for the computed eigenvalues. Eigenvalues will be
71              stored in ascendig order. The datatype must be "double". In case
72              of a GPU build ev can be a device pointer to the vectors of
73              eigenvalues in the device memory.
74
75       datatype *q;
76              The storage space for the computed eigenvectors. The dimensions
77              of the matrix must be set BEFORE with the methods elpa_set(3)
78              and elpa_setup(3). The datatype must be one of "double complex".
79              In case of a GPU build q can be a device pointer to a matrix q
80              on the device memory.
81
82       int *error;
83              The error code of the function. Should be "ELPA_OK". The error
84              codes can be querried with elpa_strerr(3)
85
86

DESCRIPTION

88       Compute the eigenvalues and (parts of) the eigenvector spectrum of a
89       complex hermitian double precision matrix.The functions elpa_init(3),
90       elpa_allocate(3), elpa_set(3), and elpa_setup(3) must be called BEFORE
91       elpa_eigenvalues can be called. Especially the number of eigenvectors
92       to be computed can be set with elpa_set(3)
93

SEE ALSO

95       elpa2_print_kernels(1) elpa_init(3) elpa_allocate(3) elpa_set(3)
96       elpa_setup(3) elpa_strerr(3) elpa_eigenvalues(3)
97       elpa_skew_eigenvalues(3) elpa_skew_eigenvectors(3) elpa_cholesky(3)
98       elpa_invert_triangular(3) elpa_solve_tridiagonal(3)
99       elpa_hermitian_multiply(3) elpa_uninit(3) elpa_deallocate(3)
100
101
102
103ELPA                           Wed Sept 01 2e0l2p1a_eigenvectors_double_complex(3)
Impressum