Matrix.EigGen Method

Overload List

#SignatureDescription
1void EigGen(TMtx B, TVec DAlpha, TVec DBeta, TBalanceType Balance, TEigBalancing BInfo, TVec rconde, TVec rcondv, TMtx VL, TMtx VR)Computes generalized eigenvalues and eigenvectors of a non-symmetric matrix.
2void EigGen(TMtx B, TVec DAlpha, TVec DBeta, TMtx VL, TMtx VR)Computes generalized eigenvalues and eigenvectors of a non-symmetric matrix.

Overload 1: void EigGen(TMtx B, TVec DAlpha, TVec DBeta, TBalanceType Balance, TEigBalancing BInfo, TVec rconde, TVec rcondv, TMtx VL, TMtx VR)

Computes generalized eigenvalues and eigenvectors of a non-symmetric matrix.

#NameTypeDescription
1BTMtxsource TMtx
2DAlphaTVecsource TVec
3DBetaTVecsource TVec
4BalanceTBalanceType
5BInfoTEigBalancing
6rcondeTVecsource TVec
7rcondvTVecsource TVec
8VLTMtxsource TMtx
9VRTMtxsource TMtx

Result: stored in self (calling object)

Remarks:

Computes for a pair of N-by-N real nonsymmetric matrices (A = Self,B) the generalized eigenvalues, and optionally, the left and/or right generalized eigenvectors (VL and/or VR).

A generalized eigenvalue for a pair of matrices (A,B) is a scalar lambda or a ratio alpha/beta := lambda, such that A - lambda*B is singular. It is usually represented as the pair (alpha,beta), as there is a reasonable interpretation for beta = 0, and even for both being zero.

The right eigenvector v(j) corresponding to the eigenvalue lambda(j) of (A,B) satisfies:

A v(j) = lambda(j) B v(j) .

The left eigenvector u(j) corresponding to the eigenvalue lambda(j) of (A,B) satisfies:

u(j)^H A = lambda(j) u(j)^H B .

where u(j)**H is the conjugate-transpose of u(j). The individual eigevalues can be computed as:

lambda(j) = dAlpha(j) / dBeta(j) ;

Optionally also computes a balancing transformation to improve the conditioning of the eigenvalues and eigenvectors , reciprocal condition numbers for the eigenvalues (rconde), and reciprocal condition numbers for the right eigenvectors (rcondv).

Overload 2: void EigGen(TMtx B, TVec DAlpha, TVec DBeta, TMtx VL, TMtx VR)

Computes generalized eigenvalues and eigenvectors of a non-symmetric matrix.

#NameTypeDescription
1BTMtxsource TMtx
2DAlphaTVecsource TVec
3DBetaTVecsource TVec
4VLTMtxsource TMtx
5VRTMtxsource TMtx

Result: stored in self (calling object)

Remarks:

A generalized eigenvalue for a pair of matrices (A = Self,B) is a scalar lambda or a ratio alpha/beta = lambda, such that A - lambda*B is singular. It is usually represented as the pair (alpha,beta), as there is a reasonable interpretation for beta = 0, and even for both being zero.

The right eigenvector v(j) corresponding to the eigenvalue lambda(j) of (A,B) satisfies:

A v(j) = lambda(j) B v(j) .

The left eigenvector u(j) corresponding to the eigenvalue lambda(j) of (A,B) satisfies:

u(j)^H A = lambda(j) u(j)^H B .

where u(j)**H is the conjugate-transpose of u(j). The individual eigevalues can be computed as:

lambda(j) = dAlpha(j) / dBeta(j) ;