Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
p?laevswp
Moves the eigenvectors from where they are computed to ScaLAPACK standard block cyclic array.
Syntax
call pslaevswp ( n , zin , ldzi , z , iz , jz , descz , nvs , key , rwork , lrwork )
call pdlaevswp ( n , zin , ldzi , z , iz , jz , descz , nvs , key , rwork , lrwork )
call pclaevswp ( n , zin , ldzi , z , iz , jz , descz , nvs , key , rwork , lrwork )
call pzlaevswp ( n , zin , ldzi , z , iz , jz , descz , nvs , key , rwork , lrwork )
Include Files
mkl_scalapack.h
Description
pslaevswp pdlaevswp pclaevswp pzlaevswp The p?laevswp routine function moves the eigenvectors (potentially unsorted) from where they are computed, to a ScaLAPACK standard block cyclic array, sorted so that the corresponding eigenvalues are sorted.
Input Parameters
np = the number of rows local to a given process.
nq = the number of columns local to a given process.
n
(global) INTEGER .
The order of the matrix A . n ≥ 0.
- zin
-
(local). REAL for pslaevswp DOUBLE PRECISION for pdlaevswp COMPLEX for pclaevswp COMPLEX*16 for pzlaevswp .
Array of size ( ldzi , nvs ( iam +2) ) . The eigenvectors on input. iam is a process rank from [0, nprocs ) interval. Each eigenvector resides entirely in one process. Each process holds a contiguous set of nvs ( iam +2) eigenvectors. The global number of the first eigenvector that the process holds is: ((sum for i =[ 1, iam +1 ] of nvs ( i ) )+1).
- ldzi
-
(local)
INTEGER . The leading dimension of the zin array.
iz , jz
(global) INTEGER . The row and column indices in the global matrix Z indicating the first row and the first column of the submatrix Z , respectively.
descz
(global and local) INTEGER
Array of size dlen_ . The array descriptor for the distributed matrix Z.
nvs
(global) INTEGER .
Array of size nprocs +1
nvs ( i ) = number of eigenvectors held by processes [0, i -1)
nvs (1) = number of eigenvectors held by processes [0, 1 -1) = 0
nvs ( nprocs +1)= number of eigenvectors held by processes [0, nprocs )= total number of eigenvectors .
key
(global) INTEGER .
Array of size n . Indicates the actual index (after sorting) for each of the eigenvectors.
- rwork
-
(local). REAL for pslaevswp DOUBLE PRECISION for pdlaevswp COMPLEX for pclaevswp COMPLEX*16 for pzlaevswp . Array of size lrwork .
- lrwork
-
(local)
INTEGER . Size of work.
Output Parameters
- z
-
(local). REAL for pslaevswp DOUBLE PRECISION for pdlaevswp COMPLEX for pclaevswp COMPLEX*16 for pzlaevswp .
Array of global size n by n and of local size ( lld_z , nq ) . The eigenvectors on output. The eigenvectors are distributed in a block cyclic manner in both dimensions, with a block size of nb .