## Solving linear equations

August 01, 2011 at 03:44 PM | categories: linear algebra | View Comments

## Contents

- Solving linear equations
- making the augmented matrix
- get the reduced row echelon form
- by inspection the solution is:
- testing the solution
- The shortcut way to solve this problem in Matlab with notation.
- linsolve function
- Not recommended solution methods
- What if no solution exists?
- how do you know no solution exists?
- Matlab gives you a solution anyway! and a warning.

## Solving linear equations

Given these equations, find [x1; x2; x3].

reference: Kreysig, Advanced Engineering Mathematics, 9th ed. Sec. 7.3

When solving linear equations, it is convenient to express the equations in matrix form:

```
A = [[1 -1 1];
[0 10 25];
[20 10 0]]
b = [0; 90; 80] % b is a column vector
```

A = 1 -1 1 0 10 25 20 10 0 b = 0 90 80

## making the augmented matrix

Awiggle = [A b]

Awiggle = 1 -1 1 0 0 10 25 90 20 10 0 80

## get the reduced row echelon form

rref(Awiggle)

ans = 1 0 0 2 0 1 0 4 0 0 1 2

## by inspection the solution is:

Let's test that out.

## testing the solution

```
x = [2;4;2]
A*x
b
% you can see that A*x = b
```

x = 2 4 2 ans = 0 90 80 b = 0 90 80

## The shortcut way to solve this problem in Matlab with notation.

the backslash operator solves the equation Ax=b. Note that when there are more equations than unknowns

x = A\b

x = 2.0000 4.0000 2.0000

## linsolve function

x = linsolve(A,b)

x = 2.0000 4.0000 2.0000

## Not recommended solution methods

You may recall that a solution to

is:

x = inv(A)*b % while mathematically correct, computing the inverse of a matrix is % computationally inefficient, and not recommended most of the time.

x = 2.0000 4.0000 2.0000

## What if no solution exists?

The following equations have no solution:

A = [[3 2 1]; [2 1 1]; [6 2 4]] b = [3; 0; 6]

A = 3 2 1 2 1 1 6 2 4 b = 3 0 6

## how do you know no solution exists?

rref([A b]) % the last line of this matrix states that 0 = 1. That is not true, which % means there is no solution.

ans = 1 0 1 0 0 1 -1 0 0 0 0 1

## Matlab gives you a solution anyway! and a warning.

```
x = A\b
% categories: Linear algebra
```

Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 3.364312e-018. x = 1.0e+016 * 1.8014 -1.8014 -1.8014