Dear David,

I can think of two strategies for dealing with this problem:
>
> Strategy 1: Some code like this:
>    if (det(X) < epsilon) {
>       warning("Near singular matrix")
>       return(NULL)
>    }
>    return(solve(X))


This solution is probably the easiest one to take, but to match
solve.default, the test should be

  if (rcond(X) < .Machine$double.eps)

Catching that case should avoid the error. I hope this helps.

All the best,
Jon

	[[alternative HTML version deleted]]

