generalized_eigenvalues_symmetric_matrixT_generalized_eigenvalues_symmetric_matrixGeneralizedEigenvaluesSymmetricMatrixGeneralizedEigenvaluesSymmetricMatrixgeneralized_eigenvalues_symmetric_matrix (Operator)

Name

generalized_eigenvalues_symmetric_matrixT_generalized_eigenvalues_symmetric_matrixGeneralizedEigenvaluesSymmetricMatrixGeneralizedEigenvaluesSymmetricMatrixgeneralized_eigenvalues_symmetric_matrix — Compute the generalized eigenvalues and optionally generalized eigenvectors of symmetric input matrices.

Signature

generalized_eigenvalues_symmetric_matrix( : : MatrixAID, MatrixBID, ComputeEigenvectors : EigenvaluesID, EigenvectorsID)

Herror T_generalized_eigenvalues_symmetric_matrix(const Htuple MatrixAID, const Htuple MatrixBID, const Htuple ComputeEigenvectors, Htuple* EigenvaluesID, Htuple* EigenvectorsID)

void GeneralizedEigenvaluesSymmetricMatrix(const HTuple& MatrixAID, const HTuple& MatrixBID, const HTuple& ComputeEigenvectors, HTuple* EigenvaluesID, HTuple* EigenvectorsID)

HMatrix HMatrix::GeneralizedEigenvaluesSymmetricMatrix(const HMatrix& MatrixBID, const HString& ComputeEigenvectors, HMatrix* EigenvectorsID) const

HMatrix HMatrix::GeneralizedEigenvaluesSymmetricMatrix(const HMatrix& MatrixBID, const char* ComputeEigenvectors, HMatrix* EigenvectorsID) const

HMatrix HMatrix::GeneralizedEigenvaluesSymmetricMatrix(const HMatrix& MatrixBID, const wchar_t* ComputeEigenvectors, HMatrix* EigenvectorsID) const   (Windows only)

static void HOperatorSet.GeneralizedEigenvaluesSymmetricMatrix(HTuple matrixAID, HTuple matrixBID, HTuple computeEigenvectors, out HTuple eigenvaluesID, out HTuple eigenvectorsID)

HMatrix HMatrix.GeneralizedEigenvaluesSymmetricMatrix(HMatrix matrixBID, string computeEigenvectors, out HMatrix eigenvectorsID)

def generalized_eigenvalues_symmetric_matrix(matrix_aid: HHandle, matrix_bid: HHandle, compute_eigenvectors: str) -> Tuple[HHandle, HHandle]

Description

The operator generalized_eigenvalues_symmetric_matrixgeneralized_eigenvalues_symmetric_matrixGeneralizedEigenvaluesSymmetricMatrixGeneralizedEigenvaluesSymmetricMatrixGeneralizedEigenvaluesSymmetricMatrixgeneralized_eigenvalues_symmetric_matrix computes all generalized eigenvalues and, optionally, generalized eigenvectors of the symmetric matrix MatrixAMatrixAMatrixAMatrixAmatrixAmatrix_a and the symmetric positive definite matrix MatrixBMatrixBMatrixBMatrixBmatrixBmatrix_b. Both matrices must have identical dimensions. The matrices are defined by the matrix handles MatrixAIDMatrixAIDMatrixAIDMatrixAIDmatrixAIDmatrix_aid and MatrixBIDMatrixBIDMatrixBIDMatrixBIDmatrixBIDmatrix_bid. On output, a new matrix EigenvaluesEigenvaluesEigenvaluesEigenvalueseigenvalueseigenvalues with the generalized eigenvalues in ascending order and, optionally, a new matrix EigenvectorsEigenvectorsEigenvectorsEigenvectorseigenvectorseigenvectors with the generalized eigenvectors is created. Each jth column of the matrix EigenvectorsEigenvectorsEigenvectorsEigenvectorseigenvectorseigenvectors contains the related eigenvector to the jth eigenvalue. The operator returns the matrix handles EigenvaluesIDEigenvaluesIDEigenvaluesIDEigenvaluesIDeigenvaluesIDeigenvalues_id and EigenvectorsIDEigenvectorsIDEigenvectorsIDEigenvectorsIDeigenvectorsIDeigenvectors_id of the matrices EigenvaluesEigenvaluesEigenvaluesEigenvalueseigenvalueseigenvalues and EigenvectorsEigenvectorsEigenvectorsEigenvectorseigenvectorseigenvectors. Access to the elements of the matrices is possible, e.g., with the operator get_full_matrixget_full_matrixGetFullMatrixGetFullMatrixGetFullMatrixget_full_matrix or get_sub_matrixget_sub_matrixGetSubMatrixGetSubMatrixGetSubMatrixget_sub_matrix.

The computation of generalized eigenvectors can be selected via ComputeEigenvectorsComputeEigenvectorsComputeEigenvectorsComputeEigenvectorscomputeEigenvectorscompute_eigenvectors = 'true'"true""true""true""true""true". The formula for the calculation of the result is with representing the th eigenvalue and represents the corresponding eigenvector.

If ComputeEigenvectorsComputeEigenvectorsComputeEigenvectorsComputeEigenvectorscomputeEigenvectorscompute_eigenvectors = 'false'"false""false""false""false""false", no generalized eigenvectors are computed. For this, the matrix handle EigenvectorsIDEigenvectorsIDEigenvectorsIDEigenvectorsIDeigenvectorsIDeigenvectors_id is invalid.

Example:

Attention

The upper triangular parts of the input matrices MatrixAMatrixAMatrixAMatrixAmatrixAmatrix_a and MatrixBMatrixBMatrixBMatrixBmatrixBmatrix_b must contain the relevant information of the matrices. The strictly lower triangular parts of the matrices are not referenced. If the referenced parts of the input matrices MatrixAMatrixAMatrixAMatrixAmatrixAmatrix_a or MatrixBMatrixBMatrixBMatrixBmatrixBmatrix_b are not of the specified type, an exception is raised.

Execution Information

Parameters

MatrixAIDMatrixAIDMatrixAIDMatrixAIDmatrixAIDmatrix_aid (input_control)  matrix HMatrix, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Matrix handle of the symmetric input matrix A.

MatrixBIDMatrixBIDMatrixBIDMatrixBIDmatrixBIDmatrix_bid (input_control)  matrix HMatrix, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Matrix handle of the symmetric positive definite input matrix B.

ComputeEigenvectorsComputeEigenvectorsComputeEigenvectorsComputeEigenvectorscomputeEigenvectorscompute_eigenvectors (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Computation of the eigenvectors.

Default value: 'false' "false" "false" "false" "false" "false"

List of values: 'false'"false""false""false""false""false", 'true'"true""true""true""true""true"

EigenvaluesIDEigenvaluesIDEigenvaluesIDEigenvaluesIDeigenvaluesIDeigenvalues_id (output_control)  matrix HMatrix, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Matrix handle with the eigenvalues.

EigenvectorsIDEigenvectorsIDEigenvectorsIDEigenvectorsIDeigenvectorsIDeigenvectors_id (output_control)  matrix HMatrix, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Matrix handle with the eigenvectors.

Result

If the parameters are valid, the operator generalized_eigenvalues_symmetric_matrixgeneralized_eigenvalues_symmetric_matrixGeneralizedEigenvaluesSymmetricMatrixGeneralizedEigenvaluesSymmetricMatrixGeneralizedEigenvaluesSymmetricMatrixgeneralized_eigenvalues_symmetric_matrix returns the value 2 (H_MSG_TRUE). If necessary, an exception is raised.

Possible Predecessors

create_matrixcreate_matrixCreateMatrixCreateMatrixCreateMatrixcreate_matrix

Possible Successors

get_full_matrixget_full_matrixGetFullMatrixGetFullMatrixGetFullMatrixget_full_matrix, get_value_matrixget_value_matrixGetValueMatrixGetValueMatrixGetValueMatrixget_value_matrix

Alternatives

generalized_eigenvalues_general_matrixgeneralized_eigenvalues_general_matrixGeneralizedEigenvaluesGeneralMatrixGeneralizedEigenvaluesGeneralMatrixGeneralizedEigenvaluesGeneralMatrixgeneralized_eigenvalues_general_matrix

See also

eigenvalues_symmetric_matrixeigenvalues_symmetric_matrixEigenvaluesSymmetricMatrixEigenvaluesSymmetricMatrixEigenvaluesSymmetricMatrixeigenvalues_symmetric_matrix, eigenvalues_general_matrixeigenvalues_general_matrixEigenvaluesGeneralMatrixEigenvaluesGeneralMatrixEigenvaluesGeneralMatrixeigenvalues_general_matrix

References

David Poole: “Linear Algebra: A Modern Introduction”; Thomson; Belmont; 2006.
Gene H. Golub, Charles F. van Loan: “Matrix Computations”; The Johns Hopkins University Press; Baltimore and London; 1996.

Module

Foundation