Maxima Function
gramschmidt (x)
gschmit(x)
Carries out the Gram-Schmidt orthogonalization algorithm on x,
which is either a matrix or a list of lists.
x is not modified by gramschmidt
.
If x is a matrix, the algorithm is applied to the rows of x. If x is a list of lists, the algorithm is applied to the sublists, which must have equal numbers of elements. In either case, the return value is a list of lists, the sublists of which are orthogonal and span the same space as x. If the dimension of the span of x is less than the number of rows or sublists, some sublists of the return value are zero.
factor
is called at each stage of the algorithm to simplify intermediate results.
As a consequence, the return value may contain factored integers.
gschmit
(note spelling) is a synonym for gramschmidt
.
load ("eigen")
loads this function.
Example:
(%i1) load ("eigen")$ Warning - you are redefining the Macsyma function Warning - you are redefining the Macsyma function (%i2) x: matrix ([1, 2, 3], [9, 18, 30], [12, 48, 60]); [ 1 2 3 ] [ ] (%o2) [ 9 18 30 ] [ ] [ 12 48 60 ] (%i3) y: gramschmidt (x); 2 2 4 3 3 3 3 5 2 3 2 3 (%o3) [[1, 2, 3], [- ---, - --, ---], [- ----, ----, 0]] 2 7 7 2 7 5 5 (%i4) i: innerproduct$ (%i5) [i (y[1], y[2]), i (y[2], y[3]), i (y[3], y[1])]; (%o5) [0, 0, 0]