On 29 April 2013 13:21, Ed Meyer <eem2...@gmail.com> wrote: > > > On Mon, Apr 29, 2013 at 9:47 AM, Jordi Gutiérrez Hermoso > <jord...@octave.org> wrote: >> >> >> All matrices need to be linearly indexable, and of course, this is how >> they are actually stored in memory, as a single long array indexed by >> a single index. Thus, the total number of indexable elements of a >> matrix can't be larger than >> std::numeric_limits<octave_idx_type>::max(). >> >> There could be some tricks we could do to relax this requirement for >> sparse matrices, but it would require some pretty deep surgery of the >> current code.
> true for full matrices but sparse matrices are stored as three arrays and > the nonzero > and row index arrays are the only ones that need be limited. So you are > saying that > sparse matrices are treated as full in some places? No, the issue is that *all* indices are limited to octave_idx_type. We would have to do some sort of deep surgery to introduce a special indexing type for sparse matrices only. It seems like a lot of work for potentially little benefit. And yes, sparse matrices can be indexed by a single index instead of two, like any other matrix. Internally in Octave's source, the assumption that a single index of octave_idx_type is available is used throughout. - Jordi G. H. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org