generalized_eigenvalues_general_matrix T_generalized_eigenvalues_general_matrix GeneralizedEigenvaluesGeneralMatrix GeneralizedEigenvaluesGeneralMatrix generalized_eigenvalues_general_matrix (Operator)
Name
generalized_eigenvalues_general_matrix T_generalized_eigenvalues_general_matrix GeneralizedEigenvaluesGeneralMatrix GeneralizedEigenvaluesGeneralMatrix generalized_eigenvalues_general_matrix — Berechnet die generalisierten Eigenwerte und optional die
generalisierten Eigenvektoren allgemeiner Matrizen.
Signatur
void GeneralizedEigenvaluesGeneralMatrix (const HTuple& MatrixAID , const HTuple& MatrixBID , const HTuple& ComputeEigenvectors , HTuple* EigenvaluesRealID , HTuple* EigenvaluesImagID , HTuple* EigenvectorsRealID , HTuple* EigenvectorsImagID )
void HMatrix ::GeneralizedEigenvaluesGeneralMatrix (const HMatrix& MatrixBID , const HString& ComputeEigenvectors , HMatrix* EigenvaluesRealID , HMatrix* EigenvaluesImagID , HMatrix* EigenvectorsRealID , HMatrix* EigenvectorsImagID ) const
void HMatrix ::GeneralizedEigenvaluesGeneralMatrix (const HMatrix& MatrixBID , const char* ComputeEigenvectors , HMatrix* EigenvaluesRealID , HMatrix* EigenvaluesImagID , HMatrix* EigenvectorsRealID , HMatrix* EigenvectorsImagID ) const
void HMatrix ::GeneralizedEigenvaluesGeneralMatrix (const HMatrix& MatrixBID , const wchar_t* ComputeEigenvectors , HMatrix* EigenvaluesRealID , HMatrix* EigenvaluesImagID , HMatrix* EigenvectorsRealID , HMatrix* EigenvectorsImagID ) const
(Nur Windows)
static void HOperatorSet .GeneralizedEigenvaluesGeneralMatrix (HTuple matrixAID , HTuple matrixBID , HTuple computeEigenvectors , out HTuple eigenvaluesRealID , out HTuple eigenvaluesImagID , out HTuple eigenvectorsRealID , out HTuple eigenvectorsImagID )
void HMatrix .GeneralizedEigenvaluesGeneralMatrix (HMatrix matrixBID , string computeEigenvectors , out HMatrix eigenvaluesRealID , out HMatrix eigenvaluesImagID , out HMatrix eigenvectorsRealID , out HMatrix eigenvectorsImagID )
Beschreibung
Der Operator generalized_eigenvalues_general_matrix generalized_eigenvalues_general_matrix GeneralizedEigenvaluesGeneralMatrix GeneralizedEigenvaluesGeneralMatrix GeneralizedEigenvaluesGeneralMatrix generalized_eigenvalues_general_matrix
berechnet alle generalisierten Eigenwerte und optional die
rechten oder linken generalisierten Eigenvektoren der
quadratischen, allgemeinen Eingangsmatrizen MatrixA und
MatrixB. Beide Eingabematrizen müssen die gleichen
Dimensionen besitzen. Die Eingangsmatrizen sind durch die Matrix
Handle MatrixAID MatrixAID MatrixAID MatrixAID matrixAID matrix_aid und MatrixBID MatrixBID MatrixBID MatrixBID matrixBID matrix_bid definiert. Die
berechneten Eigenvektoren sind auf die Länge 1 normiert.
Der Operator generiert die neuen Matrizen EigenvaluesReal
und EigenvaluesImag mit den Real- und Imaginärteilen der
berechneten Eigenwerte. Jede Matrix besteht aus einer Spalte und
n Zeilen, wobei n die Anzahl der Zeilen oder Spalten der
Eingabematrizen ist. Im Gegensatz zu dem Operator
generalized_eigenvalues_symmetric_matrix generalized_eigenvalues_symmetric_matrix GeneralizedEigenvaluesSymmetricMatrix GeneralizedEigenvaluesSymmetricMatrix GeneralizedEigenvaluesSymmetricMatrix generalized_eigenvalues_symmetric_matrix ist die
Reihenfolge der generalisierten Eigenwerte nicht definiert.
Der Operator gibt die Matrix Handles
EigenvaluesRealID EigenvaluesRealID EigenvaluesRealID EigenvaluesRealID eigenvaluesRealID eigenvalues_real_id und EigenvaluesImagID EigenvaluesImagID EigenvaluesImagID EigenvaluesImagID eigenvaluesImagID eigenvalues_imag_id zurück.
Die Real- und Imaginärteile der zugehörigen Eigenvektoren werden,
falls gewünscht, in den neuen Matrizen EigenvectorsReal
und EigenvectorsImag gespeichert. In diesem Fall
enthält die j-te Spalte der Matrizen der Eigenvektoren den
zugehörigen Eigenvektor zum j-ten Eigenwert. Zusätzlich werden
die gültigen Matrix Handles EigenvectorsRealID EigenvectorsRealID EigenvectorsRealID EigenvectorsRealID eigenvectorsRealID eigenvectors_real_id und
EigenvectorsImagID EigenvectorsImagID EigenvectorsImagID EigenvectorsImagID eigenvectorsImagID eigenvectors_imag_id zurückgegeben. Zugriff auf die
Elemente der Matrizen ist z.B. mit dem Operator
get_full_matrix get_full_matrix GetFullMatrix GetFullMatrix GetFullMatrix get_full_matrix oder get_sub_matrix get_sub_matrix GetSubMatrix GetSubMatrix GetSubMatrix get_sub_matrix möglich.
Der Berechnungstyp der Eigenvektoren kann über den Parameter
ComputeEigenvectors ComputeEigenvectors ComputeEigenvectors ComputeEigenvectors computeEigenvectors compute_eigenvectors gewählt werden. Wenn
ComputeEigenvectors ComputeEigenvectors ComputeEigenvectors ComputeEigenvectors computeEigenvectors compute_eigenvectors = 'none' "none" "none" "none" "none" "none" eingestellt ist,
werden keine Eigenvektoren berechnet, und der Operator wird
schneller. In diesen Fall sind die Matrix Handles
EigenvectorsRealID EigenvectorsRealID EigenvectorsRealID EigenvectorsRealID eigenvectorsRealID eigenvectors_real_id und EigenvectorsImagID EigenvectorsImagID EigenvectorsImagID EigenvectorsImagID eigenvectorsImagID eigenvectors_imag_id
ungültig. Sollen die rechten generalisierten Eigenvektoren
ausgegeben werden, so ist 'right' "right" "right" "right" "right" "right" zu wählen. Die Formel
für die Berechnung lautet
wobei
den
-ten (komplexen) Eigenwert und
den zugehörigen (komplexen) Eigenvektor darstellt.
Sind die linken generalisierten Eigenvektoren gewünscht, muss
'left' "left" "left" "left" "left" "left" gewählt werden. Die Formel für die Berechnung
lautet
wobei
die Konjugiert-Transponierte von
darstellt.
Beispiel:
ComputeEigenvectors ComputeEigenvectors ComputeEigenvectors ComputeEigenvectors computeEigenvectors compute_eigenvectors = 'right' "right" "right" "right" "right" "right"
Ausführungsinformationen
Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
Wird ohne Parallelisierung verarbeitet.
Parameter
MatrixAID MatrixAID MatrixAID MatrixAID matrixAID matrix_aid (input_control) matrix → HMatrix , HTuple HHandle HTuple Htuple (handle) (IntPtr ) (HHandle ) (handle )
Matrix Handle der Eingabematrix A.
MatrixBID MatrixBID MatrixBID MatrixBID matrixBID matrix_bid (input_control) matrix → HMatrix , HTuple HHandle HTuple Htuple (handle) (IntPtr ) (HHandle ) (handle )
Matrix Handle der Eingabematrix B.
ComputeEigenvectors ComputeEigenvectors ComputeEigenvectors ComputeEigenvectors computeEigenvectors compute_eigenvectors (input_control) string → HTuple str HTuple Htuple (string) (string ) (HString ) (char* )
Berechnung der Eigenvektoren.
Defaultwert:
'none'
"none"
"none"
"none"
"none"
"none"
Werteliste: 'left' "left" "left" "left" "left" "left" , 'none' "none" "none" "none" "none" "none" , 'right' "right" "right" "right" "right" "right"
EigenvaluesRealID EigenvaluesRealID EigenvaluesRealID EigenvaluesRealID eigenvaluesRealID eigenvalues_real_id (output_control) matrix → HMatrix , HTuple HHandle HTuple Htuple (handle) (IntPtr ) (HHandle ) (handle )
Matrix Handle mit den Realteilen der Eigenwerte.
EigenvaluesImagID EigenvaluesImagID EigenvaluesImagID EigenvaluesImagID eigenvaluesImagID eigenvalues_imag_id (output_control) matrix → HMatrix , HTuple HHandle HTuple Htuple (handle) (IntPtr ) (HHandle ) (handle )
Matrix Handle mit den Imaginärteilen der
Eigenwerte.
EigenvectorsRealID EigenvectorsRealID EigenvectorsRealID EigenvectorsRealID eigenvectorsRealID eigenvectors_real_id (output_control) matrix → HMatrix , HTuple HHandle HTuple Htuple (handle) (IntPtr ) (HHandle ) (handle )
Matrix Handle mit den Realteilen der
Eigenvektoren.
EigenvectorsImagID EigenvectorsImagID EigenvectorsImagID EigenvectorsImagID eigenvectorsImagID eigenvectors_imag_id (output_control) matrix → HMatrix , HTuple HHandle HTuple Htuple (handle) (IntPtr ) (HHandle ) (handle )
Matrix Handle mit den Imaginärteilen der
Eigenvektoren.
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
generalized_eigenvalues_general_matrix generalized_eigenvalues_general_matrix GeneralizedEigenvaluesGeneralMatrix GeneralizedEigenvaluesGeneralMatrix GeneralizedEigenvaluesGeneralMatrix generalized_eigenvalues_general_matrix den Wert 2 (H_MSG_TRUE ).
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
create_matrix create_matrix CreateMatrix CreateMatrix CreateMatrix create_matrix
Nachfolger
get_full_matrix get_full_matrix GetFullMatrix GetFullMatrix GetFullMatrix get_full_matrix ,
get_value_matrix get_value_matrix GetValueMatrix GetValueMatrix GetValueMatrix get_value_matrix ,
get_diagonal_matrix get_diagonal_matrix GetDiagonalMatrix GetDiagonalMatrix GetDiagonalMatrix get_diagonal_matrix
Siehe auch
generalized_eigenvalues_symmetric_matrix generalized_eigenvalues_symmetric_matrix GeneralizedEigenvaluesSymmetricMatrix GeneralizedEigenvaluesSymmetricMatrix GeneralizedEigenvaluesSymmetricMatrix generalized_eigenvalues_symmetric_matrix ,
eigenvalues_symmetric_matrix eigenvalues_symmetric_matrix EigenvaluesSymmetricMatrix EigenvaluesSymmetricMatrix EigenvaluesSymmetricMatrix eigenvalues_symmetric_matrix ,
eigenvalues_general_matrix eigenvalues_general_matrix EigenvaluesGeneralMatrix EigenvaluesGeneralMatrix EigenvaluesGeneralMatrix eigenvalues_general_matrix
Literatur
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.
Modul
Foundation