Boost logo

Ublas :

From: Dima Sorkin (dsorkin_at_[hidden])
Date: 2005-03-11 12:33:00


Hi. Some additional info:
   The number of non zeros in m1 is O(N), but unknown in advance (depends on
some numeric calculations).
Dima.

Quoting Dima Sorkin <dsorkin_at_[hidden]>:

> Hi.
> I have a following code:
> 1: sparse_matrix<double> m1(N,N);
> 2: // fill m1 ...
> 3: compressed_matrix<double> m2(m1);
>
> The time that it takes to line 3 to execute seems to be O(N^2).
> In my program it is critical to do it bounded in O(N*log(N)).
> As I understand , I should change line 3 into:
> compressed_matrix<double> m2(m1,number of non-zeros in m1);
> in order to allow to preallocate memory for m2.
>
> Questions:
> 1) Will it change the performance into O(N*log(N)) ?
> 2) I can't find any kind of non_zeros() method in class sparse_matrix.
> What is the good way to find the number of non zeros ?
>
> Thank you.
> Dima.
> _______________________________________________
> ublas mailing list
> ublas_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/ublas
>