1elpa_skew_eigenvectors(3)  Library Functions Manual  elpa_skew_eigenvectors(3)
2
3
4

NAME

6       elpa_skew_eigenvectors - computes the eigenvalues and (part of) the
7       eigenvector spectrum for a real skew-symmetric matrix
8
9

SYNOPSIS

11   FORTRAN INTERFACE
12       use elpa
13       class(elpa_t), pointer :: elpa
14
15       call elpa%skew_eigenvectors (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 can be
25              one of "real(kind=c_double)", "real(kind=c_float)",
26              "complex(kind=c_double)", or "complex(kind=c_float)". The matrix
27              has to be skew-symmetric, this is not checked by the routine.
28
29       datatype :: ev
30              The vector ev where the eigenvalues will be stored in ascending
31              order. The datatype of the vector ev can be either
32              "real(kind=c_double)", or "real(kind=c_float)", depending of the
33              datatype of the matrix. Note that complex hermitian matrices
34              also have real valued eigenvalues.  datatype :: q The storage
35              space for the computed eigenvectors. The dimensions of matrix a
36              must be set BEFORE with the methods elpa_set(3) and
37              elpa_setup(3). The datatype of the matrix can be one of
38              "real(kind=c_double)", "real(kind=c_float)",
39              "complex(kind=c_double)", or "complex(kind=c_float)". Note, that
40              for a skew-symmetric matrix the eigenvectors are complex. The
41              routines returns separately the real and imaginary parts of the
42              complex eigenvectors. Thus, the storage space has to be of
43              dimension q(#numer_of_rows,2*#number_of_column).
44
45       integer, optional :: error
46              The return error code of the function. Should be "ELPA_OK". The
47              error code can be querried with the function elpa_strerr(3)
48
49
50   C INTERFACE
51       #include <elpa/elpa.h>
52       elpa_t handle;
53
54       void elpa_eigenvalues(elpa_t handle, datatype *a, datatype *ev,
55       datatype *q, int *error);
56
57       With the definitions of the input and output variables:
58
59
60       elpa_t handle;
61              The handle to the ELPA object
62
63       datatype *a;
64              The matrix a for which the eigenvalues should be computed. The
65              dimensions of the matrix must be set BEFORE with the methods
66              elpa_set(3) and elpa_setup(3). The datatype can be one of
67              "double", "float", "double complex", or "float complex". The
68              matrix has to be symmetric or hermitian, this is not checked by
69              the routine.
70
71       datatype *ev;
72              The storage for the computed eigenvalues. Eigenvalues will be
73              stored in ascendig order. The datatype can be either "double" or
74              "float". Note that the eigenvalues of complex hermitian matrices
75              are also real.
76
77       datatype *q;
78              The storage space for the computed eigenvectors. The dimensions
79              of the matrix must be set BEFORE with the methods elpa_set(3)
80              and elpa_setup(3). The datatype can be one of "double", "float",
81              "double complex", or "float complex".  Note, that for a skew-
82              symmetric matrix the eigenvectors are complex. The routines
83              returns separately the real and imaginary parts of the complex
84              eigenvectors. Thus, the storage space has to be of dimension
85              q(#numer_of_rows,2*#number_of_column).
86
87
88       int *error;
89              The error code of the function. Should be "ELPA_OK". The error
90              codes can be querried with elpa_strerr(3)
91
92

DESCRIPTION

94       Compute the eigenvalues and (parts of) the eigenvector spectrum of a
95       real symmetric or complex hermitian matrix.The functions elpa_init(3),
96       elpa_allocate(3), elpa_set(3), and elpa_setup(3) must be called BEFORE
97       elpa_eigenvalues can be called. Especially the number of eigenvectors
98       to be computed can be set with elpa_set(3)
99

SEE ALSO

101       elpa2_print_kernels(1) elpa_init(3) elpa_allocate(3) elpa_set(3)
102       elpa_setup(3) elpa_strerr(3) elpa_eigenvalues(3)
103       elpa_skew_eigenvalues(3) elpa_eigenvectors(3) elpa_cholesky(3)
104       elpa_invert_triangular(3) elpa_solve_tridiagonal(3)
105       elpa_hermitian_multiply(3) elpa_uninit(3) elpa_deallocate(3)
106
107
108
109ELPA                            Thur Nov 7 2019      elpa_skew_eigenvectors(3)
Impressum