#include "cholesky.h" void setformat( std::ostream& out ) { out << std::right; out << std::setfill(' '); out << std::setw( 5 + std::numeric_limits::digits10); out << std::setprecision(std::numeric_limits::digits10); out << std::setiosflags(std::ios_base::showpoint); } template std::string format(const MT& mat ) { std::ostringstream out; setformat(out); for( unsigned int i=0; i T round( T val, T prec = 1.0 ) { return (val > 0.0) ? floor(val * prec + 0.5) / prec : ceil(val * prec - 0.5) / prec ; } template bool equal( const MT& M1, const MT& M2, double prec /* = 1/std::numeric_limits::digits10 ???*/ ) { if( M1.size1() != M2.size1() || M1.size2() != M2.size2() ) { return false; } for( unsigned int i=0; i