|
|
◆ WDsygv()
| Function WDsygv |
( |
IType As |
Long, |
|
|
Jobz As |
String, |
|
|
Uplo As |
String, |
|
|
N As |
Long, |
|
|
A As |
Variant, |
|
|
B As |
Variant |
|
) |
| |
Generalized eigenvalue problem of symmetric matrices
- Purpose
- WDsygv computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem, of the form A*x = λ*B*x, A*B*x = λ*x or B*A*x = λ*x.
Here A and B are assumed to be symmetric and B is also positive definite.
- Returns
- N+1 x 1 (if Jobz = "N"), N+1 x N+1 (if Jobz = "V" and Info = 0)
| Column 1 | Columns 2 to N+1 |
| Rows 1 to N | Eigenvalues in ascending order | Eigenvectors (if Jobz = "V" and Info = 0). The eigenvectors are normalized as follows:
If IType = 1 or 2: (Z^T)BZ = I
If IType = 3: (Z^T)B^(-1)Z = I |
| Row N+1 | Return code | 0 |
Return code
= 0: Successful exit
= i (0 < i <= N): The i off-diagonal elements of an intermediate tridiagonal form did not converge to zero.
= i (N < i): The leading minor of order (i - N) of B is not positive definite. The factorization of B could not be completed.
- Parameters
-
| [in] | IType | Specifies the problem type to be solved.
= 1: Ax = λBx
= 2: ABx = λx
= 3: BAx = λx |
| [in] | Jobz | = "N": Compute eigenvalues only.
= "V": Compute eigenvalues and eigenvectors. |
| [in] | Uplo | = "U": Upper triangles of A and B are stored.
= "L": Lower triangles of A and B are stored. |
| [in] | N | Order of the matrices A and B. (N >= 1) |
| [in] | A | (N x N) Symmetric matrix A. |
| [in] | B | (N x N) Symmetric positive definite matrix B. |
- Reference
- LAPACK
- Example
- Compute the eigenvalues and the eigenvectors of a generalized symmetric-definite eigenproblem of the form Ax = λBx, where A is a symmetric matrix and B is a symmetric positive definite matrix.
( 0.54 -0.90 -0.94 ) ( 1.18 0.54 -1.22 )
A = ( -0.90 0.70 1.04 ) B = ( 0.54 0.60 -0.71 )
( -0.94 1.04 1.65 ) ( -1.22 -0.71 1.66 )
|