00001 00006 #ifndef superLUtest_hh 00007 #define superLUtest_hh 00008 00009 #include "basics/testcase.hh" 00010 #include "space/space.hh" 00011 00012 namespace test { 00013 00018 class SuperLUTest : public TestCase { 00019 public: 00020 SuperLUTest() : spc(5) {} 00021 virtual ~SuperLUTest() {} 00022 virtual void run(); 00023 00025 00026 void DebuggingInfo(); 00027 void SimpleTest(); 00028 void MatrixReal(); 00029 void MatrixComplx(); 00030 void SubMatrixReal(); 00031 void LargeMatrixReal(); 00032 void LargeMatrixComplex(); 00033 00035 template<class F, class G, class H> 00036 void vectorSolve(concepts::Matrix<F>& m, G rhs[], H res[]); 00037 00039 template<class F, class G, class H> 00040 void matrixSolve(concepts::Matrix<F>& m, 00041 const concepts::Matrix<G>& rhs, 00042 const concepts::Matrix<H>& res); 00044 private: 00045 concepts::DummySpace<concepts::Real> spc; 00046 }; 00047 00048 } // namespace test 00049 00050 #endif // superLUtest_hh