Effacer les filtres
Effacer les filtres

Error using Solve with symmatrix equation

3 vues (au cours des 30 derniers jours)
Christoph Feldkircher
Christoph Feldkircher le 24 Fév 2023
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!

Réponse acceptée

Askic V
Askic V le 24 Fév 2023
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 commentaire
Christoph Feldkircher
Christoph Feldkircher le 24 Fév 2023
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.

Connectez-vous pour commenter.

Plus de réponses (0)

Produits


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by