From: Thaden, John J <ThadenJohnJ_at_uams.edu>

Date: Mon 10 Jul 2006 - 10:40:21 EST

R-help@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Mon Jul 10 10:46:15 2006

Date: Mon 10 Jul 2006 - 10:40:21 EST

Thanks. I see in the UMFPACK manual that the convention for csc matrices
for monotonic-increasing row indices is as you say.

I notice UMFPACK flags errors liberally. What if Matrix or some other package were made to interface with UMFPACK directly, to tap these and other features?

-John Thaden

dmbates@gmail.com wrote:

...

...

DB> It is not permissible to have repeated indices in the compressed
form. In the compressed form there is a well-defined ordering of the
indices, first by columns then by row within column and the row
indices must be increasing within columns.

DB> There is some documentation of the internal representations of these formats in the directory $R_LIB/Matrix/doc/UFSparse/. The User Guides in that directory are taken directly from the various sparse matrix packages that Tim Davis at the University of Florida has written. He has a book that is scheduled for publication this September

DB> Tim Davis (2006), Direct Methods for Sparse Linear Systems, SIAM, Philadelphia, PA

DB> I hope we will be able to refer to that book for details of the representation and algorithms.

On 7/8/06, Thaden, John J <ThadenJohnJ@uams.edu> wrote:

> In the Matrix package v. 0.995-11 I see that the dgTMatrix

*> Class for compressed, sparse, triplet-form matrices handles
**> Identically indexed data instances by summing their values,
**> e.g.,
**>
**> library(Matrix)
**> (Mt <- new("dgTMatrix",
**> i = as.integer(c(0,0,1,1,4)),
**> j = as.integer(c(0,1,2,2,4)),
**> x = as.double(1:5),
**> Dim = as.integer(c(5,5))))
**> ## 5 x 5 sparse Matrix of class "dgTMatrix"
**> ## [1,] 1 2 . . .
**> ## [2,] . . 7 . . <--- 7 = 3 + 4.
**> ## [3,] . . . . .
**> ## [4,] . . . . .
**> ## [5,] . . . . 5
**>
**> # If instead I make a dgCMatrix-class matrix, the first
**> # instance is overwritten by the second, e.g.,
**>
**> library(Matrix)
**> (Mc <- new("dgCMatrix",
**> i = as.integer(c(0,0,1,1,4)),
**> p = as.integer(c(0,1,2,4,5)),
**> x = as.double(1:5),
**> Dim = as.integer(c(5,5))))
**> ## 5 x 5 sparse Matrix of class "dgCMatrix"
**> ##
**> ## [1,] 1 2 . .
**> ## [2,] . . 4 . <-- the datum '3' has been lost.
**> ## [3,] . . . .
**> ## [4,] . . . .
**> ## [5,] . . . 5
**>
**> # If one arrives at the dgCMatrix via the dgTMatrix class,
**> # the summed value is of course preserved, e.g.,
**>
**> (Mtc <- as(Mt, "dgCMatrix"))
**> ## 5 x 5 sparse Matrix of class "dgCMatrix"
**> ##
**> ## [1,] 1 2 . . .
**> ## [2,] . . 7 . .
**> ## [3,] . . . . .
**> ## [4,] . . . . .
**> ## [5,] . . . . 5
**>
**> As there is nothing inherent in either compressed, sparse,
**> format that would prevent recognition and handling of
**> duplicated index pairs, I'm curious why the dgCMatrix
**> class doesn't also add x values in those instances?
**> I wonder also if others might benefit also by being able
**> to choose how these instances are handled, i.e.,
**> whether they are summed, averaged or overwritten?
**>
**> -John Thaden, Ph.D.
**> Research Assistant Professor of Geriatrics
**> University of Arkansas for Medical Sciences
**> Little Rock AR, USA
**>
**>
**> Confidentiality Notice: This e-mail message, including any
*

attachments, is for the sole use of the intended recipient(s) and may
contain confidential and privileged information. Any unauthorized
review, use, disclosure or distribution is prohibited. If you are not
the intended recipient, please contact the sender by reply e-mail and
destroy all copies of the original message.

*>
**>
*

Confidentiality Notice: This e-mail message, including any a...{{dropped}}

R-help@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Mon Jul 10 10:46:15 2006

Archive maintained by Robert King, hosted by
the discipline of
statistics at the
University of Newcastle,
Australia.

Archive generated by hypermail 2.1.8, at Mon 10 Jul 2006 - 14:14:46 EST.

*
Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help.
Please read the posting
guide before posting to the list.
*