Solve System of Linear Equations
This section shows you how to solve a system of linear equations using the Symbolic Math Toolbox™.
Solve System of Linear Equations Using linsolve
A system of linear equations
can be represented as the matrix equation , whereAis the coefficient matrix,
and is the vector containing the right sides of equations,
If you do not have the system of linear equations in the formAX = B
, useequationsToMatrix
to convert the equations into this form. Consider the following system.
Declare the system of equations.
syms x y z eqn1 = 2*x + y + z == 2; eqn2 = -x + y - z == 3; eqn3 = x + 2*y + 3*z == -10;
UseequationsToMatrix
to convert the equations into the formAX = B
. The second input toequationsToMatrix
specifies the independent variables in the equations.
[A,B] = equationsToMatrix([eqn1, eqn2, eqn3], [x, y, z])
A = [ 2, 1, 1] [ -1, 1, -1] [ 1, 2, 3] B = 2 3 -10
Uselinsolve
to solveAX = B
for the vector of unknownsX
.
X = linsolve(A,B)
X = 3 1 -5
FromX
,x= 3,y= 1andz= -5.
Solve System of Linear Equations Using solve
Usesolve
instead oflinsolve
if you have the equations in the form of expressions and not a matrix of coefficients. Consider the same system of linear equations.
Declare the system of equations.
syms x y z eqn1 = 2*x + y + z == 2; eqn2 = -x + y - z == 3; eqn3 = x + 2*y + 3*z == -10;
Solve the system of equations usingsolve
. The inputs tosolve
are a vector of equations, and a vector of variables to solve the equations for.
sol = solve([eqn1, eqn2, eqn3], [x, y, z]); xSol = sol.x ySol = sol.y zSol = sol.z
xSol = 3 ySol = 1 zSol = -5
solve
returns the solutions in a structure array. To access the solutions, index into the array.