# SCM Repository

[matrix] Diff of /pkg/tests/indexing.R
 [matrix] / pkg / tests / indexing.R

# Diff of /pkg/tests/indexing.R

revision 1707, Thu Dec 21 08:03:05 2006 UTC revision 1710, Tue Dec 26 15:57:06 2006 UTC
# Line 1  Line 1
1  #### For both 'Extract' ("[") and 'Replace' ("[<-") Method testing  ## For both 'Extract' ("[") and 'Replace' ("[<-") Method testing
2
3  library(Matrix)  library(Matrix)
4
# Line 138  Line 138
138            all(sm[,-(1:3)] == 0)            all(sm[,-(1:3)] == 0)
139            )            )
140
141    ### Diagonal -- Sparse:
142    m0 <- Diagonal(5)
143    (m1 <- as(m0, "sparseMatrix"))  # dtTMatrix
144    (m2 <- as(m0, "CsparseMatrix")) # dtCMatrix (with an irrelevant warning)
145
146    M <- m0; M[1,] <- 0
147    stopifnot(identical(M, Diagonal(x=c(0, rep(1,4)))))
148    M <- m0; M[,3] <- 3 ; M ; stopifnot(is(M, "sparseMatrix"), M[,3] == 3)
149    validObject(M)
150    M <- m0; M[1:3, 3] <- 0 ;M
151    T <- m0; T[1:3, 3] <- 10
152    stopifnot(identical(M, Diagonal(x=c(1,1, 0, 1,1))),
153              is(T, "triangularMatrix"), identical(T[,3], c(10,10,10,0,0)))
154
155    M <- m1; M[1,] <- 0 ; M ; assert.EQ.mat(M, diag(c(0,rep(1,4))), tol=0)
156    M <- m1; M[,3] <- 3 ; stopifnot(is(M,"sparseMatrix"), M[,3] == 3)
157    validObject(M)
158    M <- m1; M[1:3, 3] <- 0 ;M
159    assert.EQ.mat(M, diag(c(1,1, 0, 1,1)), tol=0)
160    T <- m1; T[1:3, 3] <- 10; validObject(T)
161    stopifnot(is(T, "dtTMatrix"), identical(T[,3], c(10,10,10,0,0)))
162
163    M <- m2; M[1,] <- 0 ; M ; assert.EQ.mat(M, diag(c(0,rep(1,4))), tol=0)
164    M <- m2; M[,3] <- 3 ; stopifnot(is(M,"sparseMatrix"), M[,3] == 3)
165    validObject(M)
166    M <- m2; M[1:3, 3] <- 0 ;M
167    assert.EQ.mat(M, diag(c(1,1, 0, 1,1)), tol=0)
168    T <- m2; T[1:3, 3] <- 10; validObject(T)
169    stopifnot(is(T, "dtCMatrix"), identical(T[,3], c(10,10,10,0,0)))
170
171
172
173  ## --- negative indices ----------  ## --- negative indices ----------
174  mc <- mC[1:5, 1:7]  mc <- mC[1:5, 1:7]

Legend:
 Removed from v.1707 changed lines Added in v.1710