Can you post a link to that pull request?
Thanks, Christoph

On Wednesday, 24 February 2016 04:26:35 UTC, Tony Kelman wrote:
>
> It is possible to store explicit zero values in sparse matrices, but not 
> via the sparse() function at the moment. You currently have to construct a 
> sparse matrix with the desired structure of stored elements, then modify 
> the field values of Mat.nzval to explicitly set some of them to zero. 
> There's an open pull request that will change this, I think the only thing 
> we were waiting for before merging was some performance benchmarking of 
> packages that heavily utilize the sparse() function.
>
>
> On Tuesday, February 23, 2016 at 2:58:44 PM UTC-8, Yankai Cao wrote:
>>
>> Hi, Stefan, 
>>
>> Thanks for your reply.  For my application, the structure of the matrix 
>> is fixed, but the values of some elements might become zero from iteration 
>> to iteration. Is it possible to keep the position of elements whose values 
>> is zero?
>> For example: 
>> I=[1;1;2]
>> J=[1;1;2]
>> V=[1.0;0.0;0.0]
>> Mat=sparse(I,J,V,2,2)
>>
>> what I get is 
>> [1,1]=1
>>
>> is it possible to get the following?
>> [ 1, 1] = 1.0
>>  [2, 2] = 0.0
>>
>>
>> Thanks. 
>>
>>
>>
>> Yankai
>>
>>
>>
>> On Tuesday, February 23, 2016 at 4:50:07 PM UTC-6, Stefan Karpinski wrote:
>>>
>>> You can't have two values at the same row and column, which is what the 
>>> first two lines of this output would indicate:
>>>
>>> [1, 1] = 1.0
>>> [1, 1] = 1.0
>>> [2, 2] = 1.0
>>>
>>>
>>> Since the indices (1,1) appear twice the associated values are added, 
>>> giving 2.0.
>>>
>>> On Tue, Feb 23, 2016 at 5:03 PM, Yankai Cao <[email protected]> wrote:
>>>
>>>> I am new to Julia. I have 2 questions about constructting sparse matrix 
>>>> from arrays. 
>>>>
>>>> 1. 
>>>> I=[1;1;2]
>>>> J=[1;1;2]
>>>> V=[1.0;1.0;1.0]
>>>> Mat=sparse(I,J,V,2,2)
>>>>
>>>> According to the Julia guide "If the combine function is not supplied, 
>>>> duplicates are added by default." I expect Mat to be
>>>> [ 1, 1] =1.0
>>>> [ 1, 1] = 1.0
>>>>  [2, 2] = 1.0
>>>>
>>>> however, what I get is 
>>>> [1,1]=2
>>>> [2,2]=1
>>>>
>>>> So what is the default behavior without combine function? How do I 
>>>> specify the combine function? There is no instructions about it right now.
>>>>
>>>> 2. when i change V=[1.0;0.0;0.0]. I expected 
>>>> [ 1, 1] = 1.0
>>>>  [2, 2] = 0
>>>>
>>>> what I get is 
>>>> [1,1]=1
>>>>  
>>>> How can I let julia to combine elements only according to the indexes 
>>>> I, J ? How to keep those elements with value 0 ?
>>>>
>>>>
>>>> Thanks in advance. 
>>>>
>>>>
>>>> Yankai
>>>>
>>>>
>>>>
>>>>
>>>>
>>>

Reply via email to