Number of solutions of a system of linear equations
30 次查看(过去 30 天)
显示 更早的评论
I am looking for MATLAB code to determine the number of solutions (0, 1, Inf) of a system of linear equations (m equations for n variables, e. g.
A=[2,1,3;0, -1,5];
b=[-3;1]
x=A\b
which has infinitely many solutions.
While the answer for the m=n case is given in this excellent post making use of the rank() function I wonder how it can be solved in the general case (m=n, m>n, m<n).
0 个评论
采纳的回答
Dimitris Kalogiros
2018-7-28
Hi Gunther.
You can use solve() within symbolic toolbox.
I'm giving you an example:
syms x y z
eqn1= 2*x + y + 3*z==-3
eqn2= -y + 5*z==1
sol = solve([eqn1, eqn2], [x, y, z], 'ReturnConditions',true);
disp('Solution is :')
[sol.x; sol.y; sol.z]
disp('With parameters : ')
sol.parameters
disp('Under the conditions :')
sol.conditions
Function solve() returns the one solution of the system , or entirely set of solutions if the system has infinite solutions. In case the system has no solutions, sol.x , sol.y , and sol.z are empty.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Linear Algebra 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!