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.

 採用された回答

Teja Muppirala
Teja Muppirala 2011 年 9 月 22 日

1 投票

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

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2011 年 9 月 22 日

0 投票

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...

カテゴリ

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by