On Mon, Jun 3, 2013 at 7:45 PM, Saurabh Jha <saurabh.j...@gmail.com> wrote:
> I agree with you on the lambda part. I am still not sure with else
> part because users may not right about whether the matrix is enough
> sparse and the methods(which exploits sparsity) would be inefficient
> if someone enters the dense matrix actually. Maybe we should have a
> common matrix interface and it should be the job of module to
> determine it's appropriate representation.

Yes, I agree we should do that.

Aaron Meurer

>
> -Saurabh Jha
>
> On Jun 4, 5:11 am, Chris Smith <smi...@gmail.com> wrote:
>> Yes, the callable could create only a few non-zero entries. And only the
>> non-zero entries are retained in the SparseMatrix so it is reasonable to
>> keep that code:
>>
>> >>> SparseMatrix(3,3,lambda i,j: 1 if i==j else 0)
>>
>> [1, 0, 0]
>> [0, 1, 0]
>> [0, 0, 1]>>> _._smat
>>
>> {(0, 0): 1, (1, 1): 1, (2, 2): 1}
>>
>> Again, the "else" part allows dense input that has few entries to be stored
>> in a compact way so there's no reason to disallow it AFAICT:
>>
>> >>> SparseMatrix([[0,0,1],[0,0,1]])
>>
>> [0, 0, 1]
>> [0, 0, 1]>>> _._smat
>>
>> {(1, 2): 1, (0, 2): 1}
>>
>> >>> SparseMatrix(3,3,lambda i,j: 1 if i==j else 0)
>>
>> (The bugginess that Aaron refers to is perhaps refering to the former state
>> of SparseMatrix; I think things are currently in pretty good shape.)
>
> --
> You received this message because you are subscribed to the Google Groups 
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sympy+unsubscr...@googlegroups.com.
> To post to this group, send email to sympy@googlegroups.com.
> Visit this group at http://groups.google.com/group/sympy?hl=en-US.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To post to this group, send email to sympy@googlegroups.com.
Visit this group at http://groups.google.com/group/sympy?hl=en-US.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to