How to obtain the value of the matrix X in equation AXA' = B?
8 views (last 30 days)
Show older comments
Muhammad Rony Hidayatullah
on 18 Jan 2022
Commented: Muhammad Rony Hidayatullah
on 19 Jan 2022
If I have
A*X*A' = B
X and B are real square matrices.
A might not be square matrix.
For example:
A (3x4) is given
B (3x3) is given
X (4x4) is unknown matrix.
How can I obtain the X matrix?
0 Comments
Accepted Answer
KSSV
on 18 Jan 2022
For the give dimensions and given equation it cannot be solved. But for given dimensions the following equation can be solved.
% A'*X*A = B
To solve above A can be (3x4) , X is (3,3) abd B is (4x4).
A = rand(3,4) ;
B = rand(4,4) ;
X = pinv(A')*B*pinv(A)
If you want to solve the given equation:
% A*X*A' = B
The dimensions of A should be (4x3), X is (3x3) and B is (4X4)
A = rand(4,3) ;
B = rand(4,4) ;
X = pinv(A)*B*pinv(A')
Check the dimensions once for your quesion. Read about pinv function and it's properties.
More Answers (1)
Torsten
on 18 Jan 2022
Edited: Torsten
on 18 Jan 2022
If you multiply out A*X*A' for a matrix of unknowns X=(x_ij) and compare the elements with those of the matrix B, you get an (in your case) underdetermined linear system of equations for the x_ij. This usually has an infinite number of solutions.
See Also
Categories
Find more on Linear Algebra in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!