Finding Congruencing Matrix between two given matrices

2 Ansichten (letzte 30 Tage)
Roi Binia
Roi Binia am 29 Aug. 2022
Bearbeitet: Bruno Luong am 30 Aug. 2022
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?

Antworten (2)

Torsten
Torsten am 29 Aug. 2022
  6 Kommentare
Roi Binia
Roi Binia am 29 Aug. 2022
Bearbeitet: Roi Binia am 29 Aug. 2022
I know it, I am trying to find the congruencing matrix.
Torsten
Torsten am 29 Aug. 2022
Bearbeitet: Torsten am 29 Aug. 2022
Do you know of standard approaches from the literature ? I don't. Seems it is a hard problem with no ready-to-use solver.

Melden Sie sich an, um zu kommentieren.


Bruno Luong
Bruno Luong am 29 Aug. 2022
Bearbeitet: Bruno Luong am 30 Aug. 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 Kommentare
Torsten
Torsten am 29 Aug. 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
Bruno Luong am 29 Aug. 2022
Bearbeitet: Bruno Luong am 29 Aug. 2022
If I know I would post the solution for general case.

Melden Sie sich an, um zu kommentieren.

Produkte


Version

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by