The LinearAlgebra'Orthogonalization' package seems to have a problem
when dealing with a set of dependent vectors:
<<LinearAlgebra`Orthogonalization`
v1={3+2I,3-2I,5};
v2={3-2I,3+2I,5};
v3={5,7,-12};
v4=2*v1;
v5=-7*v3;
GramSchmidt[{v1,v2,v3,v4},Normalized->False]
{{3 + 2*I, 3 - 2*I, 5},
{-48/35 - (172*I)/35, -48/35 + (172*I)/35, -16/7}, {330/43, 330/43,
-396/43},
{0, 0, 0}}
GramSchmidt[{v1,v2,v3,v4,v5},Normalized->False] Power::infy Infinite
expression 1/0 encountered. indet:Indeterminate expression
0*ComplexInfinity encountered.
{{3 + 2*I, 3 - 2*I, 5}, {-48/35 - (172*I)/35, -48/35 + (172*I)/35,
-16/7}, {330/43, 330/43, -396/43},
{0, 0, 0}, {Indeterminate, Indeterminate, Indeterminate}}
When the number of vectors in the input list exceeds the number of
independent ones by exactly one, there is no problem as shown in first
example. But, if a larger list is used for input, errors result as
shown in the second example.
Is there an extension or package that handles dependent sets such that
an orthogonal set is produced correctly ?
Thank you in advance,
Steve Reagan