Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
elpa_eigenvalues(3)	    Library Functions Manual	     elpa_eigenvalues(3)

NAME
     elpa_eigenvalues  -  computes all eigenvalues <lambda> for a real symmetric
     or complex hermitian eigenproblem: A*Q = <lambda>*Q

     There are also variations of this routine that can accept not only host but
     also device pointers as input/output. Names of  these  routines  explicitly
     contain  the  corresponding datatypes: elpa_eigenvalues_double, elpa_eigen-
     values_float, elpa_eigenvalues_double_complex,  elpa_eigenvalues_float_com-
     plex.

SYNOPSIS
   FORTRAN INTERFACE
     use elpa
     class(elpa_t), pointer :: elpa_handle

     call elpa_handle%eigenvalues (a, ev, error)

     With the definitions of the input and output variables:

     class(elpa_t) :: elpa_handle
	    An instance of the ELPA object.

     datatype :: a
	    The  local part of matrix A for which the eigenvalues should be com-
	    puted. The dimensions of matrix a must be set BEFORE with the  meth-
	    ods elpa_set(3) and elpa_setup(3). The datatype of the matrix can be
	    one    of	 "real(kind=c_double)",    "real(kind=c_float)",   "com-
	    plex(kind=c_double)", or "complex(kind=c_float)". The global  matrix
	    has  to  be  symmetric or hermitian, this is not checked by the rou-
	    tine.

     datatype_real :: ev
	    The global array where the eigenvalues <lambda> will  be  stored  in
	    ascending	order.	 The   datatype_real   of   ev	 can  be  either
	    "real(kind=c_double)"  or  "real(kind=c_float)",  depending  of  the
	    datatype  of  the  matrix. Note that complex hermitian matrices also
	    have real eigenvalues.

     integer, optional :: error
	    The return error code of the function. Should be "ELPA_OK". The  er-
	    ror code can be queried with the function elpa_strerr(3)

   C/C++ INTERFACE
     #include <elpa/elpa.h>
     elpa_t elpa_handle;

     void  elpa_eigenvalues(elpa_t  elpa_handle, datatype *a, datatype_real *ev,
     int *error);

     With the definitions of the input and output variables:

     elpa_t  elpa_handle;
	    The handle to the ELPA object

     datatype  *a;
	    The local part of matrix A for which the eigenvalues should be  com-
	    puted.  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"/"std::complex<double>", "float
	    complex"/"std::complex<float>" for C/C++. The global matrix  has  to
	    be symmetric or hermitian, this is not checked by the routine.

     datatype_real  *ev;
	    The  global  array	where the eigenvalues <lambda> will be stored in
	    ascending order. The datatype_real of the vector ev  can  be  either
	    "double"  or  "float", depending of the datatype of the matrix. Note
	    that complex hermitian matrices also have real eigenvalues.

     int  *error;
	    The error code of the function. Should be "ELPA_OK". The error codes
	    can be queried with elpa_strerr(3)

DESCRIPTION
     Computes the eigenvalues of a real symmetric 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_skew_eigenvalues(3) elpa_eigenvectors(3)
     elpa_skew_eigenvectors(3)	  elpa_cholesky(3)     elpa_invert_triangular(3)
     elpa_solve_tridiagonal(3)	elpa_eigenvalues(3)  elpa_uninit(3) elpa_deallo-
     cate(3)

ELPA				 Thu Nov 28 2024	     elpa_eigenvalues(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=elpa_eigenvalues&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help