38#include <boost/test/tools/floating_point_comparison.hpp>
39#include <boost/test/unit_test.hpp>
43namespace TriangularMatrixVectorMultiplicationUnitTests
52 NekDouble a_buf[] = {1, 2, 5, 3, 6, 8, 4, 7, 9, 10};
60 NekDouble expected_result_buf[] = {300, 560, 600, 400};
62 BOOST_CHECK_EQUAL(expected_result, result);
72 NekDouble a_buf[] = {1, 2, 5, 3, 6, 8, 4, 7, 9, 10};
75 std::shared_ptr<NekMatrix<NekDouble, StandardMatrixTag>> m(
82 NekDouble expected_result_buf[] = {600, 1120, 1200, 800};
84 BOOST_CHECK_EQUAL(expected_result, result);
94 NekDouble a_buf[] = {1, 2, 5, 3, 6, 8, 4, 7, 9, 10};
102 NekDouble expected_result_buf[] = {10, 140, 420, 780};
104 BOOST_CHECK_EQUAL(expected_result, result);
114 NekDouble a_buf[] = {1, 2, 5, 3, 6, 8, 4, 7, 9, 10};
117 std::shared_ptr<NekMatrix<NekDouble, StandardMatrixTag>> m(
124 NekDouble expected_result_buf[] = {30, 420, 1260, 2340};
126 BOOST_CHECK_EQUAL(expected_result, result);
136 NekDouble a_buf[] = {1, 2, 5, 3, 6, 8, 4, 7, 9, 10};
139 NekDouble b_buf[] = {300, 560, 600, 400};
145 NekDouble expected_result_buf[] = {10, 20, 30, 40};
148 BOOST_CHECK_EQUAL(expected_result, x);
158 NekDouble a_buf[] = {1, 2, 5, 3, 6, 8, 4, 7, 9, 10};
167 NekDouble expected_result_buf[] = {10, 20, 30, 40};
170 BOOST_CHECK_EQUAL(expected_result, x);
180 NekDouble a_buf[] = {1, 2, 5, 3, 6, 8, 4, 7, 9, 10};
189 NekDouble expected_result_buf[] = {10, 20, 30, 40};
192 BOOST_CHECK_EQUAL(expected_result, x);
202 NekDouble a_buf[] = {1, 2, 5, 3, 6, 8, 4, 7, 9, 10};
205 NekDouble b_buf[] = {320, 520, 570, 400};
211 NekDouble expected_result_buf[] = {10, 20, 30, 40};
214 BOOST_CHECK_EQUAL(expected_result, x);
RawType_t< VectorType > SolveTranspose(const VectorType &b)
RawType_t< VectorType > Solve(const VectorType &b)
BOOST_AUTO_TEST_CASE(TestUpperTriangularMatrixVectorMultiplication)
The above copyright notice and this permission notice shall be included.