It is not usual to attempt to write out such a solution, for a system of more than two equations it becomes very cumbersome, but the systematic procedure which enables an analytical solution to be found can more conveniently be used to compute the numerical values of the unknowns.

In general, if any unknown appears to a power other than unity, or as the argument of a function such as log or exp, then the whole set of equations becomes nonlinear and in general cannot be solved in this way. However, we will identify some special cases where a subset of the equations, in fact a partition (section 3.5.1) of the set, is entirely linear then it will be possible to solve a set of equations with a `head' and `tail' which are nonlinear.

We will describe a set of equations with an independently solvable
linear subset as ** partially linear. ** These
will be dealt with in connection
with a process case study
(section 3.7.2).

`x` - `y` + 2 `z` = 2

2 `x` + 2 `y` = 4

`x` + 3 `y` + `z` = 0

Each equation as written is of the form:

(coeff. of 1st variable) (1st variable) +/- (coeff. of 2nd variable) (2ndvariable) +/- ...... = constant

This is the only form possible if the equation is linear in all its variables. (Although the constant could have been written on the LHS with zero on the RHS as has been the usual practice with previous equations, it is conventional to write linear equations in this way.)

The regular arrangement of the equations and variables lends itself to a tabular representation as shown below.

x | y |
z |
Constant | ||

Equation 1 | 1 | -1 | 2 | 2 | |

Equation 2 | 2 | 2 | 0 | = | 4 |

Equation 3 | 1 | 3 | 1 | 0 |

We can think of the set of equations as being represented by:

- A list or vector of unknowns: {
`x, y, z`} - A table or matrix of coefficients:

- A list or vector of constants: {2, 4, 0}

If we let a single symbol stand for each of these entities, e.g.

- The unknowns:
**u**= {`x, y, z`} - The coefficients:

- The constants:
**b**= {2, 4, 0}

** A u ** = ** b **

Written in full this becomes:

Or more usually with square brackets throughout (see notes on vectors (section 1.1.1) ) as:

The individual matrix coefficients may be referred to if required, ( notes on matrices (section 1.2.1.1) as:

`a _{r,c}`

where `r` is the **row** number and `c`
is the **column** number.

However, a summary of the method is available in section 3.6.1 along with an algorithm in the form of a Fortran program.

To solve a set of linear equations with specified numerical coefficients and constant values we have provided access to such a program in the modelling lab

One of the things that spreadsheet systems cannot conveniently do is solve sets of linear equations. However, we have developed ways of doing this. If you would like to download a linear solver for up to 18 equations which can be loaded into an Excel spreadsheet, then you will also find these in the lab. Save the link in your local memory and load it. The file is in Microsoft Sylk ASCII format which is acceptable to a number of spreadsheets.

There are a number of more sophisticated options available for making spreadsheet based linear solvers which you can find out about in the modelling lab.

The set of equations may not have a solution. For example, consider the following, all of which can be written as sets of equations, and indeed have coefficients and constants entered into one of the solvers, but none of which have valid solutions. You can check this by trying them with a solver.

`x` = 3

2`x` = 4

The two equations are are inconsistent.

`x`_{1} = 3

2`x`_{1} = 6

The equations are consistent, but if intended for solution
in two unknowns, i.e. `x`_{1}
and `x`_{2}, the second equation provides no
information additional to the first, and so there is no means of solving
for `x`_{2}.

`x`_{1} + `x`_{2} = ..

`x`_{1} + `x`_{1} = ..

Depending on the values on the RHS the two equations are either inconsistent
or one is redundant. In neither case can a solution be found.

`x`_{1} + `x`_{2} = ..

2`x`_{1} + 2`x`_{1} = ..

This is the same situation, although slightly less obvious.

In all the above situations the equations are said to
be ** linearly dependent. ** This occurs whenever
one LHS is a multiple of that of another equation. More
generally this occurs if any LHS can be constructed from
any ** linear combination ** of another,
i.e. by adding together multiples of right hand sides.
The solution procedure will fail for such a set of equations
regardless of the values on the RHS.

The problem is not always obvious:

`x`_{1} + `x`_{2} + `x`_{3}
= 1

3 `x`_{1} -2 `x`_{2} + `x`_{3}
= 2

5 `x`_{1} + 3 `x`_{3} = 2

The 3rd LHS is equal to twice the first plus the second.

The above are all examples of equations sets which are said to be
** singular **. This depends only on the structure
or numerical values of the coefficient matrix, which
is also said to be singular.

Another problem can occur during the solution procedure (section 3.6.1), because this involves adding and subtracting coefficients, if the coefficients are are very different sizes. Because computers work to a limited numerical precision, if a very small number is added to a very large one. This can also happen if the values of the solutions are very different, e.g. one is a small mole fraction (say 0.0001) and another is an enthalpy (say 100,000).

In these circumstances it is a good idea to ** scale **
the problem variables to get them within the same 2 or 3 orders of magnitude.

Numerical accuracy also becomes significant if the equations
are ** nearly ** singular.

Return to Section 3 Index