Solve a system of linear equations in matrix form
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Saeed Ahmadzadeh Mahboobi
le 9 Déc 2019
Modifié(e) : Saeed Ahmadzadeh Mahboobi
le 9 Déc 2019
I want to solve the following system of linear equations.
u1 - u2 = 11.1680
u1 - u4 = 22.8197
u3 - u5 = 8.7093
u5 - u1 = 0.3391
u5 - u2 = 11.4875
So I want to create 2 matrices and set them equal to each other and simply solve them in matrix form.
So here's what I've done:
u=sym('u%d',[5,1]); % u=[u1 ; u2 ; u3 ; u4 ; u5]
Left = [u1-u2 ; u1-u4 ; u3-u5 ; u5-u1 ; u5-u2]; % Left side of the above equation system
Right = [11.1680 ; 22.8197 ; 8.7093 ; 0.3391 ; 11.4875]; % Right side of the above equation system
solve(Left==Right)
but what MATLAB returns is this:
ans =
struct with fields:
u1: [0×1 sym]
u2: [0×1 sym]
u3: [0×1 sym]
u4: [0×1 sym]
u5: [0×1 sym]
What is the problem?
Has anyone any idea how I can solve these equations in matrix form?
0 commentaires
Réponse acceptée
Star Strider
le 9 Déc 2019
The problem is that the system is sparse, so you need to use sparse functions with it.
Try this:
Left = [1 -1 0 0 0; 1 0 0 -1 0; 0 0 1 0 -1; -1 0 0 0 1; 0 -1 0 0 1];
u = lsqr(Left,Right)
producing:
u =
-0.0644
-0.3004
1.9476
-2.1104
0.5276
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Linear Algebra dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!