| 91 | // ---------------------------------------------------------------------------------------- |
| 92 | |
| 93 | void test_sparse_matrix_vector_multiply2() |
| 94 | { |
| 95 | std::vector<std::pair<unsigned long,double> > sv; |
| 96 | sv.push_back(make_pair(6, 1.42)); |
| 97 | sv.push_back(make_pair(3, 5)); |
| 98 | |
| 99 | matrix<double,9,1> v; |
| 100 | v = 0; |
| 101 | v(3) = 5; |
| 102 | v(6) = 1.42; |
| 103 | |
| 104 | |
| 105 | matrix<double,0,1> r1, r2; |
| 106 | |
| 107 | r1 = gaussian_randm(3,9)*v; |
| 108 | r2 = sparse_matrix_vector_multiply(gaussian_randm(3,std::numeric_limits<long>::max()),sv); |
| 109 | |
| 110 | DLIB_TEST(max(abs(r1-r2)) < 1e-15); |
| 111 | } |
| 112 | |
| 113 | // ---------------------------------------------------------------------------------------- |
| 114 |
no test coverage detected