Gram-Schmidt process

From testwiki
Jump to navigation Jump to search

The Gram-Schmidt process is a way of converting one set of vectors that forms a basis into another, more friendly one.

Suppose we have a set of vectors {v1,...,vn} that form a basis for Rn, and that we wish to convert these into a "friendly"Template:What basis which is easier to work with later. We begin by finding out which component of a vector is being unfriendly to a second vector, which we may do with inner products. If we have two vectors u,v, then we may find the component of u being unfriendly to v with proju(v)=<v,u><u,u>u. By subtracting this from v, we get the component friendly to u. By returning to our abstract set {v1,...,vn}, we may make use of this observation to construct a general algorithm to convert an arbitrary basis into a friendly basis. Like from our original set, each time we use the process on a new vector, it is guaranteed to be mutually friendly with all the previous vectors.

Define:

w1 = v1

w2 = v2projw1v2

et cetera, with the general term:

wn=vni=1n1projwivn

Should we wish to make this a friendly and cuteTemplate:What basis, we can simply make each new element of the basis cute, by replacing both vn with vn||vn||.