diff -up boost_1_54_0/boost/numeric/ublas/detail/matrix_assign.hpp~ boost_1_54_0/boost/numeric/ublas/detail/matrix_assign.hpp
|
old
|
new
|
namespace detail {
|
| 1303 | 1303 | void matrix_swap (M &m, matrix_expression<E> &e, packed_proxy_tag, row_major_tag) { |
| 1304 | 1304 | typedef F<typename M::iterator2::reference, typename E::reference> functor_type; |
| 1305 | 1305 | // R unnecessary, make_conformant not required |
| 1306 | | typedef typename M::size_type size_type; |
| 1307 | 1306 | typedef typename M::difference_type difference_type; |
| 1308 | 1307 | typename M::iterator1 it1 (m.begin1 ()); |
| 1309 | 1308 | typename E::iterator1 it1e (e ().begin1 ()); |
| … |
… |
namespace detail {
|
| 1329 | 1328 | void matrix_swap (M &m, matrix_expression<E> &e, packed_proxy_tag, column_major_tag) { |
| 1330 | 1329 | typedef F<typename M::iterator1::reference, typename E::reference> functor_type; |
| 1331 | 1330 | // R unnecessary, make_conformant not required |
| 1332 | | typedef typename M::size_type size_type; |
| 1333 | 1331 | typedef typename M::difference_type difference_type; |
| 1334 | 1332 | typename M::iterator2 it2 (m.begin2 ()); |
| 1335 | 1333 | typename E::iterator2 it2e (e ().begin2 ()); |
| … |
… |
namespace detail {
|
| 1357 | 1355 | typedef R conformant_restrict_type; |
| 1358 | 1356 | typedef typename M::size_type size_type; |
| 1359 | 1357 | typedef typename M::difference_type difference_type; |
| 1360 | | typedef typename M::value_type value_type; |
| 1361 | 1358 | BOOST_UBLAS_CHECK (m.size1 () == e ().size1 (), bad_size ()); |
| 1362 | 1359 | BOOST_UBLAS_CHECK (m.size2 () == e ().size2 (), bad_size ()); |
| 1363 | 1360 | |
| … |
… |
namespace detail {
|
| 1482 | 1479 | typedef R conformant_restrict_type; |
| 1483 | 1480 | typedef typename M::size_type size_type; |
| 1484 | 1481 | typedef typename M::difference_type difference_type; |
| 1485 | | typedef typename M::value_type value_type; |
| 1486 | 1482 | BOOST_UBLAS_CHECK (m.size1 () == e ().size1 (), bad_size ()); |
| 1487 | 1483 | BOOST_UBLAS_CHECK (m.size2 () == e ().size2 (), bad_size ()); |
| 1488 | 1484 | |
diff -up boost_1_54_0/boost/numeric/ublas/detail/vector_assign.hpp~ boost_1_54_0/boost/numeric/ublas/detail/vector_assign.hpp
|
old
|
new
|
namespace detail {
|
| 379 | 379 | typedef typename V::size_type size_type; |
| 380 | 380 | typedef typename V::difference_type difference_type; |
| 381 | 381 | typedef typename V::value_type value_type; |
| 382 | | typedef typename V::reference reference; |
| 383 | 382 | #if BOOST_UBLAS_TYPE_CHECK |
| 384 | 383 | vector<value_type> cv (v.size ()); |
| 385 | 384 | indexing_vector_assign<scalar_assign> (cv, v); |
| … |
… |
namespace detail {
|
| 513 | 512 | typedef F<typename V::iterator::reference, typename E::iterator::reference> functor_type; |
| 514 | 513 | typedef typename V::size_type size_type; |
| 515 | 514 | typedef typename V::difference_type difference_type; |
| 516 | | typedef typename V::value_type value_type; |
| 517 | 515 | |
| 518 | 516 | detail::make_conformant (v, e); |
| 519 | 517 | // FIXME should be a seperate restriction for E |
diff -up boost_1_54_0/boost/numeric/ublas/lu.hpp~ boost_1_54_0/boost/numeric/ublas/lu.hpp
|
old
|
new
|
namespace boost { namespace numeric { na
|
| 63 | 63 | BOOST_UBLAS_INLINE |
| 64 | 64 | void swap_rows (const PM &pm, MV &mv, vector_tag) { |
| 65 | 65 | typedef typename PM::size_type size_type; |
| 66 | | typedef typename MV::value_type value_type; |
| 67 | 66 | |
| 68 | 67 | size_type size = pm.size (); |
| 69 | 68 | for (size_type i = 0; i < size; ++ i) { |
| … |
… |
namespace boost { namespace numeric { na
|
| 75 | 74 | BOOST_UBLAS_INLINE |
| 76 | 75 | void swap_rows (const PM &pm, MV &mv, matrix_tag) { |
| 77 | 76 | typedef typename PM::size_type size_type; |
| 78 | | typedef typename MV::value_type value_type; |
| 79 | 77 | |
| 80 | 78 | size_type size = pm.size (); |
| 81 | 79 | for (size_type i = 0; i < size; ++ i) { |
diff -up boost_1_54_0/boost/numeric/ublas/operation.hpp~ boost_1_54_0/boost/numeric/ublas/operation.hpp
|
old
|
new
|
namespace boost { namespace numeric { na
|
| 129 | 129 | const vector_expression<E2> &e2, |
| 130 | 130 | V &v, packed_random_access_iterator_tag, row_major_tag) { |
| 131 | 131 | typedef const E1 expression1_type; |
| 132 | | typedef const E2 expression2_type; |
| 133 | 132 | typedef typename V::size_type size_type; |
| 134 | 133 | |
| 135 | 134 | typename expression1_type::const_iterator1 it1 (e1 ().begin1 ()); |
| … |
… |
namespace boost { namespace numeric { na
|
| 159 | 158 | const vector_expression<E2> &e2, |
| 160 | 159 | V &v, packed_random_access_iterator_tag, column_major_tag) { |
| 161 | 160 | typedef const E1 expression1_type; |
| 162 | | typedef const E2 expression2_type; |
| 163 | 161 | typedef typename V::size_type size_type; |
| 164 | 162 | |
| 165 | 163 | typename expression1_type::const_iterator2 it2 (e1 ().begin2 ()); |
| … |
… |
namespace boost { namespace numeric { na
|
| 188 | 186 | axpy_prod (const matrix_expression<E1> &e1, |
| 189 | 187 | const vector_expression<E2> &e2, |
| 190 | 188 | V &v, sparse_bidirectional_iterator_tag) { |
| 191 | | typedef const E1 expression1_type; |
| 192 | 189 | typedef const E2 expression2_type; |
| 193 | | typedef typename V::size_type size_type; |
| 194 | 190 | |
| 195 | 191 | typename expression2_type::const_iterator it (e2 ().begin ()); |
| 196 | 192 | typename expression2_type::const_iterator it_end (e2 ().end ()); |
| … |
… |
namespace boost { namespace numeric { na
|
| 350 | 346 | axpy_prod (const vector_expression<E1> &e1, |
| 351 | 347 | const matrix_expression<E2> &e2, |
| 352 | 348 | V &v, packed_random_access_iterator_tag, column_major_tag) { |
| 353 | | typedef const E1 expression1_type; |
| 354 | 349 | typedef const E2 expression2_type; |
| 355 | 350 | typedef typename V::size_type size_type; |
| 356 | 351 | |
| … |
… |
namespace boost { namespace numeric { na
|
| 380 | 375 | axpy_prod (const vector_expression<E1> &e1, |
| 381 | 376 | const matrix_expression<E2> &e2, |
| 382 | 377 | V &v, packed_random_access_iterator_tag, row_major_tag) { |
| 383 | | typedef const E1 expression1_type; |
| 384 | 378 | typedef const E2 expression2_type; |
| 385 | 379 | typedef typename V::size_type size_type; |
| 386 | 380 | |
| … |
… |
namespace boost { namespace numeric { na
|
| 411 | 405 | const matrix_expression<E2> &e2, |
| 412 | 406 | V &v, sparse_bidirectional_iterator_tag) { |
| 413 | 407 | typedef const E1 expression1_type; |
| 414 | | typedef const E2 expression2_type; |
| 415 | | typedef typename V::size_type size_type; |
| 416 | 408 | |
| 417 | 409 | typename expression1_type::const_iterator it (e1 ().begin ()); |
| 418 | 410 | typename expression1_type::const_iterator it_end (e1 ().end ()); |
| … |
… |
namespace boost { namespace numeric { na
|
| 501 | 493 | const matrix_expression<E2> &e2, |
| 502 | 494 | M &m, TRI, |
| 503 | 495 | dense_proxy_tag, row_major_tag) { |
| 504 | | typedef M matrix_type; |
| 505 | | typedef const E1 expression1_type; |
| 506 | | typedef const E2 expression2_type; |
| 507 | 496 | typedef typename M::size_type size_type; |
| 508 | 497 | typedef typename M::value_type value_type; |
| 509 | 498 | |
| … |
… |
namespace boost { namespace numeric { na
|
| 530 | 519 | const matrix_expression<E2> &e2, |
| 531 | 520 | M &m, TRI, |
| 532 | 521 | sparse_proxy_tag, row_major_tag) { |
| 533 | | typedef M matrix_type; |
| 534 | 522 | typedef TRI triangular_restriction; |
| 535 | 523 | typedef const E1 expression1_type; |
| 536 | 524 | typedef const E2 expression2_type; |
| 537 | | typedef typename M::size_type size_type; |
| 538 | 525 | typedef typename M::value_type value_type; |
| 539 | 526 | |
| 540 | 527 | #if BOOST_UBLAS_TYPE_CHECK |
| … |
… |
namespace boost { namespace numeric { na
|
| 580 | 567 | const matrix_expression<E2> &e2, |
| 581 | 568 | M &m, TRI, |
| 582 | 569 | dense_proxy_tag, column_major_tag) { |
| 583 | | typedef M matrix_type; |
| 584 | | typedef const E1 expression1_type; |
| 585 | | typedef const E2 expression2_type; |
| 586 | 570 | typedef typename M::size_type size_type; |
| 587 | 571 | typedef typename M::value_type value_type; |
| 588 | 572 | |
| … |
… |
namespace boost { namespace numeric { na
|
| 609 | 593 | const matrix_expression<E2> &e2, |
| 610 | 594 | M &m, TRI, |
| 611 | 595 | sparse_proxy_tag, column_major_tag) { |
| 612 | | typedef M matrix_type; |
| 613 | 596 | typedef TRI triangular_restriction; |
| 614 | 597 | typedef const E1 expression1_type; |
| 615 | 598 | typedef const E2 expression2_type; |
| 616 | | typedef typename M::size_type size_type; |
| 617 | 599 | typedef typename M::value_type value_type; |
| 618 | 600 | |
| 619 | 601 | #if BOOST_UBLAS_TYPE_CHECK |
| … |
… |
namespace boost { namespace numeric { na
|
| 738 | 720 | const matrix_expression<E2> &e2, |
| 739 | 721 | M &m, |
| 740 | 722 | dense_proxy_tag, row_major_tag) { |
| 741 | | typedef M matrix_type; |
| 742 | | typedef const E1 expression1_type; |
| 743 | | typedef const E2 expression2_type; |
| 744 | 723 | typedef typename M::size_type size_type; |
| 745 | 724 | typedef typename M::value_type value_type; |
| 746 | 725 | |
| … |
… |
namespace boost { namespace numeric { na
|
| 769 | 748 | const matrix_expression<E2> &e2, |
| 770 | 749 | M &m, |
| 771 | 750 | dense_proxy_tag, column_major_tag) { |
| 772 | | typedef M matrix_type; |
| 773 | | typedef const E1 expression1_type; |
| 774 | | typedef const E2 expression2_type; |
| 775 | 751 | typedef typename M::size_type size_type; |
| 776 | 752 | typedef typename M::value_type value_type; |
| 777 | 753 | |
diff -up boost_1_54_0/boost/numeric/ublas/triangular.hpp~ boost_1_54_0/boost/numeric/ublas/triangular.hpp
|
old
|
new
|
namespace boost { namespace numeric { na
|
| 1859 | 1859 | void inplace_solve (const matrix_expression<E1> &e1, vector_expression<E2> &e2, |
| 1860 | 1860 | lower_tag, column_major_tag, dense_proxy_tag) { |
| 1861 | 1861 | typedef typename E2::size_type size_type; |
| 1862 | | typedef typename E2::difference_type difference_type; |
| 1863 | 1862 | typedef typename E2::value_type value_type; |
| 1864 | 1863 | |
| 1865 | 1864 | BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); |
| … |
… |
namespace boost { namespace numeric { na
|
| 1914 | 1913 | void inplace_solve (const matrix_expression<E1> &e1, vector_expression<E2> &e2, |
| 1915 | 1914 | lower_tag, column_major_tag, unknown_storage_tag) { |
| 1916 | 1915 | typedef typename E2::size_type size_type; |
| 1917 | | typedef typename E2::difference_type difference_type; |
| 1918 | 1916 | typedef typename E2::value_type value_type; |
| 1919 | 1917 | |
| 1920 | 1918 | BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); |
| … |
… |
namespace boost { namespace numeric { na
|
| 1943 | 1941 | void inplace_solve (const matrix_expression<E1> &e1, vector_expression<E2> &e2, |
| 1944 | 1942 | lower_tag, row_major_tag, dense_proxy_tag) { |
| 1945 | 1943 | typedef typename E2::size_type size_type; |
| 1946 | | typedef typename E2::difference_type difference_type; |
| 1947 | 1944 | typedef typename E2::value_type value_type; |
| 1948 | 1945 | |
| 1949 | 1946 | BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); |
| … |
… |
namespace boost { namespace numeric { na
|
| 1969 | 1966 | void inplace_solve (const matrix_expression<E1> &e1, vector_expression<E2> &e2, |
| 1970 | 1967 | lower_tag, row_major_tag, packed_proxy_tag) { |
| 1971 | 1968 | typedef typename E2::size_type size_type; |
| 1972 | | typedef typename E2::difference_type difference_type; |
| 1973 | 1969 | typedef typename E2::value_type value_type; |
| 1974 | 1970 | |
| 1975 | 1971 | BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); |
| … |
… |
namespace boost { namespace numeric { na
|
| 1998 | 1994 | void inplace_solve (const matrix_expression<E1> &e1, vector_expression<E2> &e2, |
| 1999 | 1995 | lower_tag, row_major_tag, unknown_storage_tag) { |
| 2000 | 1996 | typedef typename E2::size_type size_type; |
| 2001 | | typedef typename E2::difference_type difference_type; |
| 2002 | 1997 | typedef typename E2::value_type value_type; |
| 2003 | 1998 | |
| 2004 | 1999 | BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); |
| … |
… |
namespace boost { namespace numeric { na
|
| 2374 | 2369 | void inplace_solve (const matrix_expression<E1> &e1, matrix_expression<E2> &e2, |
| 2375 | 2370 | lower_tag, dense_proxy_tag) { |
| 2376 | 2371 | typedef typename E2::size_type size_type; |
| 2377 | | typedef typename E2::difference_type difference_type; |
| 2378 | 2372 | typedef typename E2::value_type value_type; |
| 2379 | 2373 | |
| 2380 | 2374 | BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); |
| … |
… |
namespace boost { namespace numeric { na
|
| 2435 | 2429 | void inplace_solve (const matrix_expression<E1> &e1, matrix_expression<E2> &e2, |
| 2436 | 2430 | lower_tag, unknown_storage_tag) { |
| 2437 | 2431 | typedef typename E2::size_type size_type; |
| 2438 | | typedef typename E2::difference_type difference_type; |
| 2439 | 2432 | typedef typename E2::value_type value_type; |
| 2440 | 2433 | |
| 2441 | 2434 | BOOST_UBLAS_CHECK (e1 ().size1 () == e1 ().size2 (), bad_size ()); |