Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 10/31/2024
Public
Document Table of Contents

?laqr1

Sets a scalar multiple of the first column of the product of 2-by-2 or 3-by-3 matrix H and specified shifts.

Syntax

call slaqr1( n, h, ldh, sr1, si1, sr2, si2, v )

call dlaqr1( n, h, ldh, sr1, si1, sr2, si2, v )

call claqr1( n, h, ldh, s1, s2, v )

call zlaqr1( n, h, ldh, s1, s2, v )

Include Files

  • mkl.fi

Description

Given a 2-by-2 or 3-by-3 matrix H, this routine sets v to a scalar multiple of the first column of the product

K = (H - s1*I)*(H - s2*I), or K = (H - (sr1 + i*si1)*I)*(H - (sr2 + i*si2)*I)

scaling to avoid overflows and most underflows.

It is assumed that either 1) sr1 = sr2 and si1 = -si2, or 2) si1 = si2 = 0.

This is useful for starting double implicit shift bulges in the QR algorithm.

Input Parameters

n

INTEGER.

The order of the matrix H. n must be equal to 2 or 3.

sr1, si2, sr2, si2

REAL for slaqr1

DOUBLE PRECISION for dlaqr1

Shift values that define K in the formula above.

s1, s2

COMPLEX for claqr1

DOUBLE COMPLEX for zlaqr1.

Shift values that define K in the formula above.
h

REAL for slaqr1

DOUBLE PRECISION for dlaqr1

COMPLEX for claqr1

DOUBLE COMPLEX for zlaqr1.

Array, DIMENSION (ldh, n), contains 2-by-2 or 3-by-3 matrix H in the formula above.

ldh

INTEGER.

The leading dimension of the array h just as declared in the calling routine. ldh n.

Output Parameters

v

REAL for slaqr1

DOUBLE PRECISION for dlaqr1

COMPLEX for claqr1

DOUBLE COMPLEX for zlaqr1.

Array with dimension (n).

A scalar multiple of the first column of the matrix K in the formula above.