Finding Congruencing Matrix between two given matrices
Afficher commentaires plus anciens
I have two given nxn matrices A,M and I am trying to find P such that
P*A*P.'=M.
How can I find the solution for P in matlab?
Réponses (2)
Bruno Luong
le 29 Août 2022
Modifié(e) : Bruno Luong
le 30 Août 2022
Partial solution:
if A and M are real symmetric or complex Hemitian, the P can be computed as
[W,E]=eig(M,'vector');
[V,D]=eig(A,'vector');
P = W*diag(sqrt(E./D))*V';
Note that if A and M real,
- (A+A') and (M+M') are pure real symmetric,
- 1i*(A-A') and 1i*(M-M') are pure imaginary Hermitian
- Any real combination of both are Hermitian
2 commentaires
Torsten
le 29 Août 2022
Note that if A and M real,
- (A+A') and (M+M') are pure real symmetric,
- 1i*(A-A') and 1i*(M-M') are pure imaginary Hermitian
- Any real combination of both are Hermitian
Do you think this helps for the general case A, M in GL(7,IR) or why did you add this ?
Bruno Luong
le 29 Août 2022
Modifié(e) : Bruno Luong
le 29 Août 2022
If I know I would post the solution for general case.
Catégories
En savoir plus sur Function Creation dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!