[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: About diagonal matrices
From: |
Daniel J Sebald |
Subject: |
Re: About diagonal matrices |
Date: |
Sun, 01 Mar 2009 14:16:14 -0600 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.3) Gecko/20041020 |
Jaroslav Hajek wrote:
On Sun, Mar 1, 2009 at 8:23 PM, Daniel J Sebald <address@hidden> wrote:
dbateman wrote:
Well I'm finally somewhere I can write an e-mail from easily, though I
haven't had the time to reread the thread. The issue I considered in the
past like this was operations like "speye(n) .^ 0" or "speye(n) ./ 0"
where
the 0.^0 and 0./0 terms of the matrix should create a NaN in the resulting
matrix I hadn't considered the "speye(n) OP NaN" but didn't and don't yet
see why it should be different if the NaN is pre-existing rather than
created by the binary operation, otherwise the NaN values won't propagate
and in fact might very likely disappear. You seem to think, and have
convince John that disappearing NaN's are a good thing so I'll try to
reread
the thread and respond again later on.
I think a "default sparse value" solves this, no matter what one thinks the
defined behavior should be. Call the indeces assigned the default value the
"sparse set". The sparse set could be NaN, while assigned values could also
happen to be NaN.
No, it doesn't. At least not completely - just the simple cases. See
my previous examples about this. And it would make the sparse
operations more complicated and probably less efficient.
You are, obviously, free to propose a detailed implementation. But
please be more specific.
Say I define a sparse matrix where indeces (i,j) in S are zero. Call S the sparse set. I.e.,
M(i,j) = 0 for (i,j) in S
m_i,j otherwise
Now, do an operation on M (something simple so we can avoid the issues of set
operations across sparse matrices... I know, that's where all the work is), say
M/0. Then
M(i,j)/0 = Nan for (i,j) in S
m_i,j / 0 otherwise
We've kept track of the sparse set, so we still know what this. Little has
changed, assigned from assigning the sparse set a value. Correct?
For the more general operations of two sparse sets, I proposed in a previous
email to keep track of index sets. It adds more complexity
The value of the sparse matrix is when it comes time to use it in operations
where a full matrix would consume the CPU. So it does make sense to keep
track of the sparse set.
Huh? I don't understand.
What is the purpose of sparse sets? Represent large matrices that are mostly
zero (or some default value, I argue). Also, when solving matrix operations or
systems of equations that are sparse, much of the computations can be discarded.
Dan
- Re: About diagonal matrices, dbateman, 2009/03/01
- Re: About diagonal matrices, Daniel J Sebald, 2009/03/01
- Re: About diagonal matrices, Jaroslav Hajek, 2009/03/01
- Re: About diagonal matrices,
Daniel J Sebald <=
- Re: About diagonal matrices, Jaroslav Hajek, 2009/03/01
- Re: About diagonal matrices, Daniel J Sebald, 2009/03/01
- Re: About diagonal matrices, Jaroslav Hajek, 2009/03/02
- Re: About diagonal matrices, Daniel J Sebald, 2009/03/02
- Re: About diagonal matrices, Jaroslav Hajek, 2009/03/02
Re: About diagonal matrices, Jaroslav Hajek, 2009/03/01