
My real problem is that I've got a list of points in R3 and want to decide if they determine a plane, meaning they are coplanar but not colinear. Similarly, given a list of points in R2, I want to verify that they aren't colinear. Both of these can be done by converting the list of points to a matrix and finding the rank of the matrix, but I only use the rank function in the definitions of colinear and coplanar.
Maybe there's an easier way to tackle the underlying problems. Anyone got a suggestion for such?
I have written an experimental [implementation] of a Gauss-Jordan solver and matrix inverter. You might find some use for it. It does work and is reasonably fast, though not as fast as hmatrix. One advantage is that you can feed the points incrementally, and it will tell you immediately when there is no solution. It will also quickly reject redundant points, even in the presence of rounding errors. Since I need it often enough I'm going to write a library for Gauss-Jordan at some point. [implementation]: http://hub.darcs.net/ertes-m/solvers/browse/Solver/Matrix.hs Greets, Ertugrul