Solving for an unkown matrix

Is there a way to solve the following matrix equation in matlab?
P*A + B*P = C
A,B,C,P have the same matrix dimensions. A,B,C are known matrices. P is an unknown matrix.

 Risposta accettata

Teja Muppirala
Teja Muppirala il 22 Set 2011
This is the Sylvester equation. You can solve it using the LYAP command.
A = rand(3);
B = rand(3);
C = rand(3);
P = lyap(B,A,-C)
P*A+B*P - C

Più risposte (1)

Walter Roberson
Walter Roberson il 22 Set 2011

0 voti

Computationally, it can be solved when A, B, and C are given -- with, of course, exceptions for cases such as A and B are all 0 and C is not.
However, I do not know if there is a good way to formulate what the solution will be. I have the general symbolic 4 x 4 case running now, and it is taking its sweet time...

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by