  # Gram-Schmidt Process

## What is the Gram-Schmidt Process?

Gram-Schmidt process, or orthogonalisation, is a way to transform the vectors of the basis of a subspace from an arbitrary alignment to an orthonormal basis. A subspace, in this case an inner product space, is described by a number of linearly independent vectors with each vector being a dimension of the subspace.  The Gram-Schmidt process takes those vectors and generates the same number of vectors organized as an orthonormal system. This is done by taking one of the vectors and finding the projection of the next vector that is orthogonal to the first vector. This is repeated until all vectors are orthogonal and then all of the vectors are normalized, making all the vectors of the subspace an equal length and easier to work.

### Why is this Useful?

In any inner product space, the basis to work in can be chosen. It is often much simpler to perform calculations in an orthogonal basis, and the Gram-Schmidt process constructs an orthonormal (orthogonal and normalized) basis. In graphical terms, think of each vector of the basis as being an axis in a plot. When the axes are at right angles to each other, it is easier to visualize and interpret the information presented.