[Haskell-cafe] Coplanarity or Colinearity [Was: low-cost matrix rank?]

Ertugrul Söylemez ertesx at gmx.de
Sat Apr 25 14:12:55 UTC 2015

> 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

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 472 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20150425/924d8e97/attachment.sig>

More information about the Haskell-Cafe mailing list