Solve a system of linear equations in matrix form
1 view (last 30 days)
Show older comments
Saeed Ahmadzadeh Mahboobi
on 9 Dec 2019
Edited: Saeed Ahmadzadeh Mahboobi
on 9 Dec 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 Comments
Accepted Answer
Star Strider
on 9 Dec 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 Comments
More Answers (0)
See Also
Categories
Find more on Symbolic Math Toolbox 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!