Error using Solve with symmatrix equation

10 ビュー (過去 30 日間)
Christoph Feldkircher
Christoph Feldkircher 2023 年 2 月 24 日
Hi I'm trying to find the general symbolic solution to the following matrix equation:
, with A, L, H and 0 being matrices of any size.
I tried the following code:
A = symmatrix('A', [3 3]);
H = symmatrix('H', [3 3]);
L = eye(3,3) - A;
sol = solve(A + 1/2*L^2 - 1/6*L^3 - H==zeros(3,3), A);
Incorrect number or types of inputs or outputs for function 'solve'.
It gives me the following error: Incorrect number or types of inputs or outputs for function 'solve'. Could somebody give me a hint what I need to change? Thank you for any help in advance!

採用された回答

Askic V
Askic V 2023 年 2 月 24 日
The function solve doesn'tsupport symmatrix. One way to solve matrix equeation is the follwoing:
A_r = [3 -6; 5 2];
B_r = [7 4; -5 8];
X_r = 2*B_r-3*A_r
X_r = 2×2
5 26 -25 10
% solve symbolically
A = sym('a', [2 2]);
B = sym('b', [2 2]);
X = sym('x', [2 2]);
sol = solve(3*A+X-2*B == zeros(2,2), X);
[sol.x1_1, sol.x1_2; sol.x2_1, sol.x2_2]
ans = 
Since you have matrices 3x3 with power to 3, you need to be prepared to wait a long time.
  1 件のコメント
Christoph Feldkircher
Christoph Feldkircher 2023 年 2 月 24 日
Hey Askic V, thank you for the quick reply. Your method or symmatrix2sym would solve the problem for specific matrices, in this case, 3x3. However, is there any method to solve this equation for any arbitrary matrices of any size? This is probably more a math question than a programming question, but I was just wondering if Matlab can solve the equation for A: with A, L and H being matrices of any size, 0 as the zero vector and I as the identity matrix, as a general symbolic equation. I appreciate any help you can provide.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSymbolic Math Toolbox についてさらに検索

製品


リリース

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by