XLPack 6.1
Excel VBA Numerical Library Reference Manual
Loading...
Searching...
No Matches

◆ Dopgtr()

Sub Dopgtr ( Uplo As  String,
N As  Long,
Ap() As  Double,
Tau() As  Double,
Q() As  Double,
Info As  Long 
)

Generates a transform matrix from a real symmetric matrix in packed form to tridiagonal form

Purpose
This routine generates a real orthogonal matrix Q which is defined as the product of N - 1 elementary reflectors of order N, as returned by Dsptrd.
If Uplo = "U", Q = H(N-1) . . . H(2) H(1).
If Uplo = "L", Q = H(1) H(2) . . . H(N-1).
Parameters
[in]Uplo= "U": Upper triangular packed storage used in previous call to Dsptrd.
= "L": Lower triangular packed storage used in previous call to Dsptrd.
[in]NOrder of the matrix Q. (N >= 0) (If N = 0, returns without computation)
[in]Ap()Array Ap(LAp - 1) (LAp >= N(N + 1)/2)
The vectors which define the elementary reflectors, as returned by Dsptrd.
[in]Tau()Array Tau(LTau - 1) (LTau >= N - 1)
Tau(i) must contain the scalar factor of the elementary reflector H(i), as returned by Dsptrd.
[out]Q()Array Q(LQ1 - 1, LQ2 - 1) (LQ1 >= N, LQ2 >= N)
The n x n orthogonal matrix Q.
[out]Info= 0: Successful exit.
= -1: The argument Uplo had an illegal value (Uplo <> "U" nor "L")
= -2: The argument N had an illegal value (N < 0)
= -3: The argument Ap() is invalid.
= -4: The argument Tau() is invalid.
= -5: The argument Q() is invalid.
Reference
LAPACK