The Elt class includes Floats, while they PrintDense class works only for things over Doubles. This means that some functions, like lu, which requires only Elts, work for matrices of Floats, while e.g. qr (needing PrintDense) works only for matrices of Doubles. Some of the constructors, e.g. vr and vc, also only work with Doubles.
Could you either allow Floats as elements everywhere, or disallow them completely? Or at the very least, more cleanly delineate exactly what operations (exact solvers / iterative solvers / other stuff) they will be allowed in?
The
Eltclass includesFloats, while theyPrintDenseclass works only for things overDoubles. This means that some functions, likelu, which requires onlyElts, work for matrices ofFloats, while e.g.qr(needingPrintDense) works only for matrices ofDoubles. Some of the constructors, e.g.vrandvc, also only work withDoubles.Could you either allow
Floats as elements everywhere, or disallow them completely? Or at the very least, more cleanly delineate exactly what operations (exact solvers / iterative solvers / other stuff) they will be allowed in?