elpa_skew_eigenvectors(3)
π elpa_skew_eigenvectors(3) β ELPA manual, bestie edition π
okay so this is the ELPA manual page for elpa_skew_eigenvectors(3). It computes all eigenvalues Ξ» and (part of) the eigenvectors for a real skew-symmetric eigenproblem: A*Q = Ξ»*Q. yes bestie, skew-symmetric, we love a structured queen π
β¨ NAME β¨
elpa_skew_eigenvectors β computes all eigenvalues Ξ» and (part of) the eigenvectors for a real skew-symmetric eigenproblem: A*Q = Ξ»*Q.
πΈ SYNOPSIS πΈ
π§ FORTRAN INTERFACE π§
use elpa
class(elpa_t), pointer :: elpa_handle
call elpa_handle%skew_eigenvectors (a, ev, q, error)
With the definitions of the input and output variables:
class(elpa_t) :: elpaβ An instance of the ELPA object.datatype_real :: aβ The local part of matrix A for which the eigenvalues and eigenvectors should be computed. The dimensions of matrixamust be set BEFORE with the methodselpa_set(3)andelpa_setup(3). Thedatatype_realof the matrix can be one of"real(kind=c_double)"or"real(kind=c_float)". The global matrix has to be skew-symmetric, this is not checked by the routine. no cap, it is literally not checked πdatatype_real :: evβ The array where the eigenvalues Ξ» will be stored in ascending order. Thedatatype_realofevcan be either"real(kind=c_double)"or"real(kind=c_float)", depending of the datatype of the matrix.datatype_real :: qβ The storage space for the computed eigenvectors Q. The number of requested eigenpairs must be set BEFORE with the methodselpa_set(3)andelpa_setup(3). The number of requested eigenvectors must be set BEFORE with the methodselpa_set(3)andelpa_setup(3). Thedatatype_realcan be one of"complex(kind=c_double)"or"complex(kind=c_float)". Note, that for a skew-symmetric matrix the eigenvectors are complex. The routine returns separately the real and imaginary parts of the complex eigenvectors. Thus, the storage space has to be of dimensionq(#number_of_rows, 2*#number_of_columns).integer, optional :: errorβ The return error code of the function. Should beELPA_OK. The error code can be queried with the functionelpa_strerr(3).
π₯ C/C++ INTERFACE π₯
#include <elpa/elpa.h>
elpa_t elpa_handle;
void elpa_eigenvalues(elpa_t elpa_handle, datatype_real *a,
datatype_real *ev, datatype_real *q, int *error);
With the definitions of the input and output variables:
elpa_t elpa_handle;β The handle to the ELPA object.datatype_real *a;β The local part of matrix A for which the eigenvalues and eigenvectors should be computed. The dimensions of the matrix must be set BEFORE with the methodselpa_set(3)andelpa_setup(3). Thedatatype_realcan be"double"or"float". The global matrix has to be symmetric or hermitian, this is not checked by the routine.datatype_real *ev;β The array where the eigenvalues Ξ» will be stored in ascending order. Eigenvalues will be stored in ascending order. Thedatatype_realcan be either"double"or"float".datatype_real *q;β The storage space for the computed eigenvectors Q. The number of requested eigenvectors must be set BEFORE with the methodselpa_set(3)andelpa_setup(3). Thedatatype_realcan be"double complex"or"float complex". Note, that for a skew-symmetric matrix the eigenvectors are complex. The routine returns separately the real and imaginary parts of the complex eigenvectors. Thus, the storage space has to be of dimensionq(#number_of_rows, 2*#number_of_columns).int *error;β The error code of the function. Should beELPA_OK. The error codes can be queried withelpa_strerr(3).
π¦ DESCRIPTION π¦
Computes the eigenvalues and (part of) the eigenvector spectrum of a real skew-symmetric matrix. The functions elpa_init(3), elpa_allocate(3), elpa_set(3), and elpa_setup(3) must be called BEFORE elpa_skew_eigenvectors can be called. In particular, the number of the requested eigenpairs, "nev", must be set with elpa_set(3). like, set it up first bestie, don't just vibe in there unprepared π
π 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_skew_eigenvalues(3)elpa_eigenvectors(3)elpa_cholesky(3)elpa_invert_triangular(3)elpa_solve_tridiagonal(3)elpa_hermitian_multiply(3)elpa_uninit(3)elpa_deallocate(3)
okay thatβs the whole manual page, bestie π source/version: ELPA, date: Thu Nov 28 2024. periodt β¨π
π¦ where this page comes from
- nixpkgs unstable: elpa 2026.02.002
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms