Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
p?laconsb
Looks for two consecutive small subdiagonal elements.
Syntax
call pslaconsb ( a , desca , i , l , m , h44 , h33 , h43h34 , buf , lwork )
call pdlaconsb ( a , desca , i , l , m , h44 , h33 , h43h34 , buf , lwork )
call pclaconsb ( a , desca , i , l , m , h44 , h33 , h43h34 , buf , lwork )
call pzlaconsb ( a , desca , i , l , m , h44 , h33 , h43h34 , buf , lwork )
Include Files
mkl_scalapack.h
Description
pslaconsb pdlaconsb pclaconsb pzlaconsb The p?laconsb routine function looks for two consecutive small subdiagonal elements by analyzing the effect of starting a double shift QR iteration given by h44 , h33 , and h43h34 to see if this process makes a subdiagonal negligible.
Input Parameters
a
(local) REAL for pslaconsb
DOUBLE PRECISION for pdlaconsb COMPLEX for pclaconsb DOUBLE COMPLEX for pzlaconsb
Array of size (lld_a,LOCc(n_a)) . On entry, the Hessenberg matrix whose tridiagonal part is being scanned. Unchanged on exit.
desca
(global and local) INTEGER .
Array of size dlen_ . The array descriptor for the distributed matrix A .
i
(global) INTEGER .
The global location of the bottom of the unreduced submatrix of A . Unchanged on exit.
l
(global) INTEGER .
The global location of the top of the unreduced submatrix of A . Unchanged on exit.
h44 , h33 , h43h34
(global). REAL for pslaconsb
DOUBLE PRECISION for pdlaconsb COMPLEX for pclaconsb DOUBLE COMPLEX for pzlaconsb These three values are for the double shift QR iteration.
lwork
(local) INTEGER .
This must be at least 7*ceil(ceil( (i-l)/mb_a )/lcm(nprow, npcol)) . Here lcm is the least common multiple and nprow*npcol is the logical grid size.
Output Parameters
- m
-
(global). On exit, this yields the starting location of the QR double shift. This will satisfy: l ≤ m ≤ i -2.
- buf
-
(local). REAL for pslaconsb DOUBLE PRECISION for pdlaconsb COMPLEX for pclaconsb DOUBLE COMPLEX for pzlaconsb Array of size lwork .