Opened 13 years ago

Last modified 13 years ago

#3396 assigned Feature Requests

add a sparse_view class that wraps pre-allocated data into a matrix expression

Reported by: Gunter Owned by: Gunter
Milestone: Boost 1.42.0 Component: uBLAS
Version: Boost 1.40.0 Severity: Not Applicable
Keywords: Cc:

Description

Provide a way to use ublas with pre-allocated data. Implement a matrix view of a CRS matrix as proof of concept. Details:

  • provide a wrapper that fulfills the immutable part of the matrix expression

Further tasks:

  • split the current matrix and vector concepts into immutable and mutable parts in order to gain a "read-only view" concept and a full featured "expression" concept
  • improve traits mechanism and apply it where possible to automatically see a fixed size C-array as vector view or matrix view
  • add necessary tests

Change History (5)

comment:1 by Gunter, 13 years ago

(In [56003]) see #3396

traits.hpp:

  • split traits into "view traits" and "mutable traits"

experimental:

  • added new folder for emerging/unfinished features

experimental/sparse_view.hpp:

  • added new class c_array_view which presents a T* array and a size as vector_view
  • added new class compressed_matrix_view which wraps three arrays into a matrix_view

detail/concepts.hpp:

  • prepared vector_view concept (still disabled because further work is needed here)

comment:2 by Gunter, 13 years ago

(In [56005]) see #3396

test/concepts.cpp:

  • prepared test for vector_view and sparse_view (still disabled)

test/sparse_view_test.cpp:

  • test case for sparse_view, currently only operator(i,j) is tested

test/Jamfile.v2:

  • added new test case to test suite

comment:3 by Gunter, 13 years ago

(In [56006]) see #3396

doc/expression_concept.htm:

  • splitted required methods into to const and non-const methods
  • fixed minor typos

comment:4 by Gunter, 13 years ago

Milestone: Boost 1.41.0Boost 1.42.0
Status: newassigned

rescheduled in favor of other tasks

comment:5 by Gunter, 13 years ago

(In [56624]) see #3396 (view concepts), see #3449 (new free functions)

Note: See TracTickets for help on using tickets.