SCM

SCM Repository

[matrix] Diff of /pkg/ChangeLog
ViewVC logotype

Diff of /pkg/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1298, Sat Jun 10 19:56:18 2006 UTC revision 1748, Mon Jan 29 20:48:26 2007 UTC
# Line 1  Line 1 
1    2007-01-29  Martin Maechler  <maechler@stat.math.ethz.ch>
2    
3            * R/diagMatrix.R (solve): the obvious methods for diagonalMatrix
4            objects.
5    
6            * tests/Class+Meth.R (tstMatrixClass): now testing diag(), nnzero(),
7              and more of "!", "&", "|", all, any; coercions
8    
9            * R/Rsparse.R: many coercions (which enable quite a few other
10            methods), thanks to enhancements in
11            * src/dgCMatrix.c (R_to_CMatrix): new, and
12            * src/dgCMatrix.c (compressed_to_TMatrix): now for (d,l,n) ,
13            symmetric & triangular and ..RMatrix objects.
14    
15            * src/TMatrix_as.c (Matrix_T_as_DENSE,Matrix_T_as_GENERAL):
16            renamed file from src/dsTMatrix.c;
17            now dealing with symmetric and triangular Tsparse coercions, both
18            to dense and general.
19    
20    2007-01-27  Martin Maechler  <maechler@stat.math.ethz.ch>
21    
22            * src/dsTMatrix.c: has now "l" and "n" methods besides the "d" ones.
23    
24            * R/Ops.R (Arith): <dgCMatrix> o <numeric> now remains sparse
25            where sensible when the <numeric> is of length > 1.
26    
27    2007-01-26  Martin Maechler  <maechler@stat.math.ethz.ch>
28    
29            * R/Matrix.R ([<-): for M[] <- value: fix length
30    
31    2007-01-25  Martin Maechler  <maechler@stat.math.ethz.ch>
32    
33            * R/Auxiliaries.R (n2l_Matrix): new, to be used in
34            * R/ndenseMatrix.R: new coercions n* -> l*
35    
36    2007-01-22  Martin Maechler  <maechler@stat.math.ethz.ch>
37    
38            * R/triangularMatrix.R: new file; simple triu() and tril() methods.
39    
40            * R/Ops.R ("Logic"): and other "Ops", many updates
41    
42    2007-01-18  Martin Maechler  <maechler@stat.math.ethz.ch>
43    
44            * src/Mutils.h (SET_DimNames): new utility
45    
46            * R/Auxiliaries.R (nnzero): improved and now exported via
47    
48            * NAMESPACE: + nnzero(); length() == prod(dim(.)) method for all "Matrix" objects
49    
50    2007-01-17  Martin Maechler  <maechler@stat.math.ethz.ch>
51    
52            * R/diagMatrix.R (!): fix typo.
53    
54    2007-01-16  Martin Maechler  <maechler@stat.math.ethz.ch>
55    
56            * R/Auxiliaries.R (as_Csparse): and quite a few others:
57                    allow to pass class definition --> speedup
58            * R/sparseMatrix.R: apply the above
59    
60            * R/Csparse.R: coercion Csparse* to dense* now preserves shape properties.
61    
62            * src/Mutils.h (mMatrix_as_geMatrix): new, based on
63            * src/Mutils.c (dup_mMatrix_as_geMatrix): new; generalization of
64            old dup_mMatrix_as_dgeMatrix), eliminating a long-standing "FIXME".
65    
66            * src/dense.c (dense_to_Csparse): use new mMatrix_as_geMatrix()
67    
68            * R/denseMatrix.R (.dense2C): based on dense_to_Csparse: name it,
69            and use it for "sparse*" as well, since it's faster than the
70            as_Csparse(.) way.
71    
72    2007-01-15  Martin Maechler  <maechler@stat.math.ethz.ch>
73    
74            * R/Ops.R ("Logic"): more methods, notably an  <lgC> o <lgC> one.
75    
76    2007-01-12  Martin Maechler  <maechler@stat.math.ethz.ch>
77    
78            * R/Tsparse.R (.TM.repl.i.2col): new internal function to be used
79            as method for   M[ ij ] <- v
80            * R/Csparse.R:: go via Tsparse for "M[ij] <- v"
81    
82            * R/Ops.R: "Compare" for (C|R)sparse: need pointer slot for all
83            FALSE answer
84    
85            * R/Csparse.R (replCmat): fix the "all non-zero" case with reordering
86            * tests/indexing.R: test it, and some of the above
87    
88    2007-01-05  Martin Maechler  <maechler@stat.math.ethz.ch>
89    
90            * R/Auxiliaries.R (is_duplicatedT): new utility
91    
92    2007-01-05  Douglas Bates  <bates@stat.wisc.edu>
93    
94            * src/init.c (R_init_Matrix): export cholmod_scale
95    
96    2006-12-30  Martin Maechler  <maechler@stat.math.ethz.ch>
97    
98            * R/zzz.R (tmp): for R >= 2.5.0, extend formals of our
99            base::as.matrix to (x, ...)
100    
101    2006-12-28  Martin Maechler  <maechler@stat.math.ethz.ch>
102    
103            * R/Ops.R ("Arith" etc): move almost all "Ops" methods to new R
104            file; start using "Logic", hence
105    
106            * DESCRIPTION (Depends): R >= 2.4.1 (since we want "Logic")
107            * NAMESPACE: import and export "Logic"
108    
109    2006-12-27  Martin Maechler  <maechler@stat.math.ethz.ch>
110    
111            * src/zpotfr.f and dependencies: use LAPACK 3.1 version
112            only needed previously to R version 2.5.0.
113    
114    2006-12-26  Martin Maechler  <maechler@stat.math.ethz.ch>
115    
116            * DESCRIPTION (Date, Version): 0.9975-8, ready for release
117    
118            * R/Tsparse.R (replTmat): fix subassignment of triangular
119            * R/Csparse.R (replCmat): ditto
120            * tests/indexing.R: more tests, incl the above fix
121    
122    2006-12-23  Martin Maechler  <maechler@stat.math.ethz.ch>
123    
124            * R/Auxiliaries.R (drop0): extend for non CSparse
125            * R/Auxiliaries.R (diagU2N): should work for all sparseMatrix
126    
127            * src/Csparse.c (Csparse_to_Tsparse, Csparse_general_to_symmetric):
128                    use uplo correctly (!); other places: use uplo_P() macro
129    
130            * R/Csparse.R (replCmat): call diagU2N() when needed
131            * R/Tsparse.R (replTmat): ditto
132    
133            * src/dtCMatrix.c (tCMatrix_validate): new
134            * src/dtTMatrix.c (tTMatrix_validate): new, used in
135            * R/AllClass.R: for validity of dtC, dsC, and dtT, dsT.
136    
137            * R/diagMatrix.R (replDiag): to use in [<-
138    
139    2006-12-22  Martin Maechler  <maechler@stat.math.ethz.ch>
140    
141            * R/Auxiliaries.R (as_Csparse2, as_geSimpl): new functions;
142                    also more general diagU2N().
143    
144    2006-12-21  Martin Maechler  <maechler@stat.math.ethz.ch>
145    
146            * R/bind2.R: new file for all cbind2(), rbind() methods moved here
147            from R/<foo>Matrix.R files. Better diagonal & improved sparse methods.
148    
149    2006-12-20  Martin Maechler  <maechler@stat.math.ethz.ch>
150    
151            * tests/bind.R: a few more cases
152            * R/Auxiliaries.R (.M.kind): also work for atomic vectors
153    
154            * R/denseMatrix.R (cbind2/rbind2): moved here (and generalized) from
155            * R/ddenseMatrix.R (cbind2/rbind2)
156            * R/Tsparse.R (replTmat): final(?!) fix for "[<-" ..
157            * tests/indexing.R
158            * tests/indexing.Rout.save: updated
159    
160    2006-12-18  Martin Maechler  <maechler@stat.math.ethz.ch>
161    
162            * R/Tsparse.R (replTmat): fixed a remaining "[<-" bug in
163            * tests/indexing.R
164    
165    2006-12-15  Martin Maechler  <maechler@stat.math.ethz.ch>
166    
167            * R/sparseMatrix.R (prSpMatrix): "." alignment much improved:
168            align with proper position of "0", i.e., right for integers.
169            argument 'align' by default is "fancy".
170    
171    2006-12-14  Martin Maechler  <maechler@stat.math.ethz.ch>
172    
173            * R/sparseMatrix.R: delegate "Compare" to "Csparse.."
174            * R/Csparse.R: and fix "Compare" for more cases.
175            * tests/Class+Meth.R: test some of these (m == m, m != m)
176    
177    2006-12-13  Martin Maechler  <maechler@stat.math.ethz.ch>
178    
179            * R/lsparseMatrix.R: all() and any() methods
180            * R/ldenseMatrix.R:      ditto
181            * NAMESPACE, R/Matrix.R: ditto
182    
183            * man/all-methods.Rd: document them minimally
184    
185            * tests/simple.R: add a few examples for these
186    
187    2006-12-11  Martin Maechler  <maechler@stat.math.ethz.ch>
188    
189            * R/Tsparse.R ([): fix long standing typo in symmetric case
190            * man/dsCMatrix-class.Rd: add example exhibiting the above case
191    
192    2006-12-10  Douglas Bates  <bates@stat.wisc.edu>
193    
194            * src/CHMfactor.c (CHMfactor_to_sparse): change LDL factorization
195            to LL before converting to a sparse matrix. (The LDL form can be
196            converted to a sparse matrix but it is implicitly a unit
197            triangular matrix and a diagonal matrix overwritten on the diagonal.)
198    
199    2006-12-09  Douglas Bates  <bates@stat.wisc.edu>
200    
201            * src/chm_common.c (chm_factor_to_SEXP): allocate and fill the Dim slot.
202    
203    2006-12-08  Douglas Bates  <bates@stat.wisc.edu>
204    
205            * DESCRIPTION (Version): updated -> release 0.9975-7
206            * src/{init.c,chm_common.c}, inst/include/*: export cholmod_analyze_p
207    
208    2006-11-30  Martin Maechler  <maechler@stat.math.ethz.ch>
209    
210            * R/diagMatrix.R (%*%): write a direct [diag o Csparse] method
211    
212    2006-11-29  Douglas Bates  <bates@stat.wisc.edu>
213    
214            * src/dgeMatrix.c (dgeMatrix_solve): Check error code from dgetri.
215            * tests/dg_Matrix.R: Add Barry Rowlingson's test of a matrix that
216            is exactly singular.
217    
218    2006-11-07  Martin Maechler  <maechler@stat.math.ethz.ch>
219    
220            * DESCRIPTION (Date): updated -> release 0.9975-6
221    
222    2006-11-06  Martin Maechler  <maechler@stat.math.ethz.ch>
223    
224            * R/Csparse.R (replCmat): symmetric indexing of symmetric matrix
225            now returns symmetric.
226    
227            * R/zzz.R ("diag<-"): replace "diag<-" in base for R <= 2.4.x
228    
229            * R/Matrix.R (.M.sub.i.2col):  new, for  M[ cbind(i,j) ] indexing.
230            * R/Matrix.R (.M.repl.i.2col): new, for  M[ cbind(i,j) ] <- value
231    
232            * R/Auxiliaries.R (.type.kind): added
233    
234    2006-11-04  Martin Maechler  <maechler@stat.math.ethz.ch>
235    
236            * src/cs.[ch]: updated to CSparse Version 2.0.3 by simply
237            running src/CSparse_install.sh
238    
239            * R/denseMatrix.R: "[": keep symmetric on symmetric indexing.
240    
241    2006-11-03  Martin Maechler  <maechler@stat.math.ethz.ch>
242    
243            * src/dsCMatrix.c (dsCMatrix_Csparse_solve): new
244            * R/dsCMatrix.R (solve): "fully-sparse" using the above.
245    
246            * R/AllClass.R: "pMatrix" now also inherits from "generalMatrix"
247    
248            * tests/Class+Meth.R (tstMatrixClass): now assure
249            the (important in method programming) property :
250    
251                    ###>>  Every "Matrix" is either
252                    ###>>  "general*", "symmetric*", "triangular*" or "diagonal*"
253    
254                    (where "*" stands for "Matrix")
255    
256            * R/Auxiliaries.R (diagU2N): now .Call()s Csparse_diagU2N for <Csparse>
257    
258            * R/dMatrix.R (Compare(<dMatrix>,<dMatrix>): update and
259            * tests/validObj.R: checks for "comparison"
260    
261            * R/sparseMatrix.R ([): improved indexing for sparse;
262                    trying to keep <symmetric>[ n, n] symmmetric
263    
264            * tests/indexing.R: indexing for logical sparse now ok
265    
266    
267    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
268    
269            * src/Tsparse.c: use xTsparse_validate() , and hence remove
270    
271            * src/{ltC,lsC,lgT}Matrix.[ch]: removed
272    
273    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
274    
275            * R/AllClass.R (Matrix-class): check length of dimnames in validity.
276    
277            * tests/simple.R: validObject() checking the above.
278    
279            * src/dgCMatrix.c (xCMatrix_validate): new, small and simple,
280            replacing both dgCMatrix_validate and lgCM*.
281    
282            * src/Csparse.c (Csparse_dense_prod, etc): do not lose dimnames;
283            fix dimnames setting in other places.
284            * src/chm_common.c (chm_dense_to_SEXP): now can pass dimnames
285    
286    2006-11-01  Martin Maechler  <maechler@stat.math.ethz.ch>
287    
288            * R/Csparse.R,src/Csparse.c, etc: tcrossprod(<CsparseM>,<CsparseM>)
289    
290            * R/sparseMatrix.R (isSymmetric): drop 'factors' slot for
291            symmetry test, via
292            * R/Auxiliaries.R (.as.dgC.0.factors):
293    
294    2006-11-01  Douglas Bates  <bates@r-project.org>
295    
296            * R/Csparse.R,src/Csparse.c,tests/matprod.R,
297            man/CsparseMatrix-class.Rd: crossprod(<CsparseMatrix>,
298            <CsparseMatrix>) added
299    
300    2006-10-30  Martin Maechler  <maechler@stat.math.ethz.ch>
301    
302            * tests/matprod.R: add a variation of Harri's example
303    
304            * R/dsparseMatrix.R: fix crossprod(<dsparse>, <dge>) to *not*
305            recursive infinitely.
306    
307            * R/dgCMatrix.R: + solve(<sparse>, <sparse>)
308    
309            * tests/indexing.R: add test for the "<" bug fixed 10-27 in R/dMatrix.R
310    
311    2006-10-28  Martin Maechler  <maechler@stat.math.ethz.ch>
312    
313            * tests/Class+Meth.R (tstMatrixClass): more: use non-trivial
314            matrix if possible; test m+m == 2*m; now test dgRMatrix.
315            * R/dgRMatrix.R (.to.dgR): a few more coercions, in order to
316            satisfy the above test.
317    
318    2006-10-27  Martin Maechler  <maechler@stat.math.ethz.ch>
319    
320            * R/Matrix.R (Ops):  <Matrix> o <matrix>  method added
321    
322            * R/dgCMatrix.R: solve(a, b="missing") based on
323            * src/dgCMatrix.c (dgCMatrix_matrix_solve): extend to work with
324            RHS = NULL.
325    
326            * R/diagMatrix.R (diagdiagprod): extend %*% etc to ldiMatrix;
327            add more (needed) [t]crossprod() methods.
328    
329            * man/ddiMatrix-class.Rd: more info, notably on 'diag'
330    
331            * R/Auxiliaries.R (as_CspClass): cleanup
332            (drop0): internal utility for "Csparse_drop(*, 0)"
333            (.bail.out.2): encourage active feedback
334    
335    2006-10-26  Martin Maechler  <maechler@stat.math.ethz.ch>
336    
337            * R/dMatrix.R(Compare): new(), then slots [no validity check]
338    
339            * src/Csparse.c (Csparse_validate): fixed (and more efficient in
340            non-valid or 'sorted' case).
341    
342            * R/dsparseMatrix.R: add "chol" method.
343            * R/ddenseMatrix.R: ditto
344    
345            * R/diagMatrix.R (Ops): group methods for  <diagonal> o <sparse>
346            * NAMESPACE (Ops)
347            * R/diagMatrix.R (diag2T): simple utility used "higher level"
348            coercion; deprecating direct lower level coercions.
349    
350            * R/*.R (seq): use seq_len() and seq_along() where possible.
351    
352    
353    2006-10-23  Martin Maechler  <maechler@stat.math.ethz.ch>
354    
355            * DESCRIPTION (Version): 0.9975-5 ready for release
356    
357    2006-10-20  Douglas Bates  <bates@stat.wisc.edu>
358    
359            * src/init.c (R_init_Matrix): export more cholmod CCallable functions.
360    
361    2006-10-20  Martin Maechler  <maechler@stat.math.ethz.ch>
362    
363            * R/AllClass.R (corMatrix): add 'validity' check;
364                    comment out unused "LDL" class definition
365            * NAMESPACE: mention, but do not export "LDL" class
366            * R/corMatrix.R: new (simple), needed for R-devel with
367            * tests/Class+Meth.R (tstMatrixClass): 1 exception for corMatrix
368              coerce and t() exceptions for all 5 'Mat.MatFact' classes.
369    
370    2006-10-19  Douglas Bates  <bates@stat.wisc.edu>
371    
372            * src/chm_common.h: Add R_cholmod_start to initialize cholmod to
373            use Rprintf and R's error handling.
374    
375    2006-10-17  Martin Maechler  <maechler@stat.math.ethz.ch>
376    
377            * R/diagMatrix.R (%*%): rep(*, each = .) in Matrix %*% diagonal.
378            * tests/matprod.R: add tests for the bug fixed.
379    
380    2006-10-11  Douglas Bates  <bates@stat.wisc.edu>
381    
382            * src/HBMM.[ch]: remove HarwellBoeing format for writing.
383            * src/SOURCES_C.mkf (SOURCES_C): no longer compile iohb.c
384    
385    2006-10-06  Douglas Bates  <bates@stat.wisc.edu>
386    
387            * R/d[gs]CMatrix.R: deprecate the writeHB function.  Use writeMM instead.
388    
389    2006-10-06  Martin Maechler  <maechler@stat.math.ethz.ch>
390    
391            * DESCRIPTION (Version): 0.9975-3
392    
393            * R/diagMatrix.R (bdiag): new function constructing block diagonal
394            (sparse) matrices.
395            * man/bdiag.Rd: docu + examples
396    
397            * R/Csparse.R (replCmat): calling new Csparse_drop() now.
398    
399            * src/Csparse.c (Csparse_general_to_symmetric, Csparse_drop): new functions
400            * R/lsCMatrix.R: three more coercions to lsC (thanks to the above)
401    
402            * R/diagMatrix.R (Diagonal): '[<-' method for diag.matrices such
403            that result is sparse or diagonal (and not dense).
404    
405            * man/Subassign-methods.Rd: fix examples
406    
407            * R/Matrix.R (Matrix):  Matrix(0, *) or Matrix(*, sparse=TRUE)
408            should always return a sparse (and not sometimes a diagonal) matrix.
409    
410    2006-10-05  Martin Maechler  <maechler@stat.math.ethz.ch>
411    
412            * R/Matrix.R ([<-): also for value "Matrix" or "matrix"
413    
414    2006-10-04  Douglas Bates  <bates@stat.wisc.edu>
415    
416            * DESCRIPTION (Version): 0.9975-2
417    
418            * inst/include/Matrix_stubs.c (M_cholmod_sparse_to_triplet): export more symbols
419    
420    2006-10-02  Douglas Bates  <bates@R-project.org>
421    
422            * tests/dg_Matrix.R: Simplify test taking into account new code.
423    
424    2006-09-29  Martin Maechler  <maechler@stat.math.ethz.ch>
425    
426            * R/Csparse.R (replCmat): improve for missing i / j in non-simple cases
427    
428            * R/lsTMatrix.R: new files w/ missing methods
429            * R/nsTMatrix.R:  "  'for completeness'
430    
431            * tests/Class+Meth.R: a bit less 'not.ok.classes'
432    
433            * R/Tsparse.R (t): generalized "t" method from "dgT*" to "Tsparse*"
434    
435    
436    2006-09-28  Douglas Bates  <bates@R-project.org>
437    
438            * src/dppMatrix.h: Ensure definition of dspMatrix_validate is
439            included.
440    
441            * src/init.c, inst/include/{Matrix.h,Matrix_stubs.h,cholmod.h}:
442            Export C-callable functions used in Zt_create in lme4.
443    
444    2006-09-28  Martin Maechler  <maechler@stat.math.ethz.ch>
445    
446            * DESCRIPTION (Version): 0.9975-1
447    
448            * tests/simple.R: less checks fail; using NA, found that our
449                    kronecker() is not base-compatible with NA's.
450    
451            * R/dMatrix.R: "Compare" method now implemented for all cases
452    
453            * R/Auxiliaries.R (indTri): == which([lower/upper].tri( * )) new utility
454    
455            * man/dtpMatrix-class.Rd: mention length of 'x' slot
456    
457            * src/dtpMatrix.c (dtpMatrix_validate): fix check
458            * src/dspMatrix.c (dspMatrix_validate): ditto
459    
460            * R/dtTMatrix.R (gt2tT): fix ("l" -> "n")
461              including coercion to [nl]tTMatrix.
462    
463            * R/diagMatrix.R (show): print a header line as for other classes.
464    
465    2006-09-27  Martin Maechler  <maechler@stat.math.ethz.ch>
466    
467            * src/Makefile.win (SUBDIRS): fix typo
468    
469    2006-09-19  Martin Maechler  <maechler@stat.math.ethz.ch>
470    
471            * DESCRIPTION (Date): ready to release 0.9975-0 to CRAN
472    
473    2006-09-18  Douglas Bates  <bates@stat.wisc.edu>
474    
475            * R/[CT]sparse.R (crossprod and tcrossprod): Handle the cases for x
476            symmetric and y missing in R code using %*% (cholmod_aat doesn't
477            accept a symmetric matrix).
478            * tests/group-methods.R: Uncomment test of crossprod applied to
479            lsCMatrix objects.
480    
481    2006-09-18  Martin Maechler  <maechler@stat.math.ethz.ch>
482    
483            * R/AllClass.R (symmetricMatrix): add validity method (available
484            in C for a long time). Many "n..Matrix": drop (wrong) validity arg.
485    
486            * src/lgCMatrix.c (lgCMatrix_validate): check 'x' slot (!)
487    
488            * tests/indexing.Rout.save:
489            * tests/indexing.R: additions, mainly for 'lsparse'
490    
491            * R/diagMatrix.R (Diagonal) & coercion to lgTMatrix: fixes for NA
492            case.
493    
494            * R/Auxiliaries.R (nz.NA): new utility now used in nnzero()
495    
496    2006-09-16  Martin Maechler  <maechler@stat.math.ethz.ch>
497    
498            * R/sparseMatrix.R (prSpMatrix): print logical NAs "visibly"
499                    as 'N' (1-letter - Ok?)
500    
501            * tests/group-methods.R: add test for logical + NAs
502    
503            * R/dMatrix.R ("Compare"): fix to work with NA's
504    
505            * R/AllClass.R: "Cholesky" etc now inherit from MatrixFactorization.
506    
507            * src/lgCMatrix.c (ncsc_to_matrix): renamed from lcsc_to_matrix()
508                    which is implemented.
509    
510    2006-09-15  Martin Maechler  <maechler@stat.math.ethz.ch>
511    
512            * src/chm_common.c: coerce logical <-> double instead of
513            typecasting;  needed for "l" matrix handling in cholmod.
514    
515            * tests/other-pkgs.R (graph): small extension in "graph" checks.
516    
517            * R/sparseMatrix.R (graphNEL -> Tsparse): method for weight case.
518            (Tsp2grNEL): other fixes needed
519    
520    2006-09-11  Martin Maechler  <maechler@stat.math.ethz.ch>
521    
522            * R/AllClass.R ("nMatrix"): and subclasses for "nonzero pattern"
523                    Matrices, since "lMatrix", also "lsparseM" can have NA
524            * R/ndenseMatrix.R, etc: new source files
525            * man/nsparseMatrix-classes.Rd, etc: new help files
526            * tests/: adaptions
527            * src/chm_common.c (chm_dense_to_SEXP): and others:
528                    new 'Rkind' argument: "l*" and "d*" both use CHOLMOD_REAL
529            * src/Csparse.c, etc: ditto
530    
531    2006-09-11  Douglas Bates  <bates@R-project.org>
532    
533            * src/Mutils.[ch],init.c inst/include/*.h: Move the
534            alloc_d**Matrix functions to the lme4 package.
535    
536    2006-09-09  Douglas Bates  <bates@R-project.org>
537    
538            * src/dsCMatrix.c (dsCMatrix_Cholesky): igoring LDL = FALSE now
539            fixed
540    
541    2006-09-09  Martin Maechler  <maechler@stat.math.ethz.ch>
542    
543            * R/lMatrix.R: new
544    
545            * R/sparseMatrix.R (Tsp2grNEL): do not yet use graph::foo()
546    
547            * R/dgeMatrix.R: do not define tcrossprod() methods for "matrix"
548            * man/tcrossprod.Rd: ditto
549    
550    2006-09-08  Douglas Bates  <bates@stat.wisc.edu>
551    
552            * inst/include/Matrix_stubs.c,Matrix.h: Add declarations and stubs
553            for exported functions
554            * src/Makefile, src/CHOLMOD/Lib/Makefile, src/Metis,CAMD,CCOLAMD:
555            Remove partitioning algorithms for sparse matrix reordering.  The
556            copyright on the Metis code was problematic and the methods were
557            rarely used.
558            * src/triplet_to_col.[ch],MMHB.[ch]: Remove triplet_to_col.  Such
559            operations are now done entirely in CHOLMOD code.
560    
561    2006-09-06  Douglas Bates  <bates@R-project.org>
562    
563            * src/Mutils.h: Remove functions that are no longer used.
564    
565    2006-09-04  Douglas Bates  <bates@R-project.org>
566    
567            * src/dtCMatrix.c (dtCMatrix_validate): rename functions.
568            * src/DEPS.mkf: update
569    
570    2006-09-02  Martin Maechler  <maechler@stat.math.ethz.ch>
571    
572            * created branches/Matrix-for-R-2.3.x;  on trunk: do
573            * DESCRIPTION (Version): 0.9975-0
574            (Depends): R (>= 2.4.0)
575    
576    2006-09-01  Douglas Bates  <bates@R-project.org>
577    
578            * R/sparseMatrix.R: Added direct method to CsparseMatrix from graphNEL
579    
580    2006-09-01  Martin Maechler  <maechler@stat.math.ethz.ch>
581    
582            * R/sparseMatrix.R: add coercion from "ANY" to "sparseMatrix"
583            * R/denseMatrix.R:  add coercion from "ANY" to "denseMatrix"
584    
585            * R/Matrix.R ([): use nargs() to disambiguate M[i] and M[i,]
586    
587    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
588    
589            * R/sparseMatrix.R (Arith): moved Arith group method one-level up
590            from "dsparse" to "sparse" and now go via "Csparse" instead of "dgC"
591            * R/dsparseMatrix.R: ditto
592            * R/Csparse.R: ditto
593    
594    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
595    
596            * R/dMatrix.R (Compare): improve availability of "<", etc
597            * R/Auxiliaries.R (asTuniq): new; also make use of R 2.4.x print(*,max)
598    
599    2006-08-30  Martin Maechler  <maechler@stat.math.ethz.ch>
600    
601            * R/dgCMatrix.R: aargh: "Arith(<dgC>, numeric)" was wrong because
602            of a 0-index which was used as 1-index (..hmm)
603    
604            * R/sparseMatrix.R (prSpMatrix): fix printing an all-0 sparse Matrix
605    
606            * R/Auxiliaries.R (all0, is0): for 0-testing in presence of NA's
607            * R/Auxiliaries.R (isTriMat): use all0() for 0-testing.
608            (.is.diagonal): ditto
609    
610            * R/lgTMatrix.R: as("matrix", "lgTMatrix"): warn about NA's
611    
612            * R/Matrix.R (Matrix): also work for NA data
613    
614    2006-08-28  Martin Maechler  <maechler@stat.math.ethz.ch>
615    
616            * R/Matrix.R (Matrix): + 'forceCheck' argument; dimnames setting
617            in all cases.
618    
619    2006-08-27  Douglas Bates  <bates@R-project.org>
620    
621            * src/dense.[ch],init.c, R/ddenseMatrix.R, man/band.Rd
622            (ddense_band): Added triu, tril and band for ddenseMatrix objects.
623    
624    2006-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>
625    
626            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): added all subclasses of
627            subclasses of "ddenseMatrix"
628            * src/init.c et al: outcomment dtrM*_as_dge* and dsyM*_as_dge*_
629            * R/ddenseMatrix.R et al: setAs("ddenseMatrix", "dgeMatrix", ..)
630            instead of half dozen specialized ones.
631    
632    2006-08-25  Douglas Bates  <bates@R-project.org>
633    
634            * R/lmer.R (qqmath method): Bug fix provided by Emmanuel Tillard
635            <tillard@cirad.fr> - ordering standard errors to match effects.
636    
637    2006-08-24  Douglas Bates  <bates@R-project.org>
638    
639            * src/lsCMatrix.c (lsCMatrix_trans): Remove lsCMatrix_chol based
640            on R_ldl.
641            * R/lCholCMatrix.R,
642            src/[dl]CholCMatrix.[ch],R_ldl.[ch],Metis_utils.[ch]: removed
643            * src/dsCMatrix.c (dsCMatrix_to_dgTMatrix): use CHOLMOD
644            * many files in ./R and ./src: Use more general version of
645            dup_mMatrix_as_dgeMatrix to simplify method definitions.
646            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): Add ddiMatrix,
647            dtpMatrix, dspMatrix and dppMatrix conversions.
648    
649    
650    2006-08-23  Douglas Bates  <bates@R-project.org>
651    
652            * R/AllClass.R,lCholCMatrix.R,src/SOURCES_C.mkf,init.c,NAMESPACE:
653            Remove classes lCholCMatrix and dCholCMatrix based on R_ldl code.
654            * src/dgeMatrix.c: Ensure 'factors' slot exists in result of
655            dgeMatrix_crossprod (may need to do this in other places).
656            * R/AllGeneric.R,dsCMatrix.R, src/dscMatrix.[ch]: Add Cholesky
657            generic and method for dsCMatrix.  Use CHOLMOD for chol().
658    
659    2006-08-22  Douglas Bates  <bates@R-project.org>
660    
661            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): updated for general
662            types of classed Matrices, matrices or numeric or logical vectors.
663            * src/init.c: register dup_mMatrix_as_dgeMatrix for coercions.
664            * src/chm_common.c,Mutils.h (as_cholmod_factor): Move check_class
665            to Mutils.h (as an inline) and change name to Matrix_check_class;
666            fixes in as_cholmod_factor and chm_factor_to_SEXP.
667            * src/dsCMatrix.[ch]: Use CHOLMOD for dsCMatrix_chol and
668            dsCMatrix_matrix_solve.  Comment out vestigial functions.
669            * src/Csparse.c: use diag_P and uplo_P macros.
670    
671    2006-08-21  Douglas Bates  <bates@R-project.org>
672    
673            * src/lmer.c (internal_mer_RZXinv): Fix memory leak caught by
674            valgrind.
675            * tests/matprod.R: Add tests to verify that 'solve' and '%*%' are
676            inverses.
677            * src/sparseQR.c (sparseQR_validate): add new validation test, fix
678            -Wall warnings.
679            * src/dppMatrix.c,dtrMatrix.c,dgCMatrix.c,dgeMatrix.c,dspMatrix.c:
680            Use dup_mMatrix_as_dgeMatrix.
681    
682    2006-08-20  Douglas Bates  <bates@R-project.org>
683    
684            * src/sparseQR.c: Fix thinko in sparseQR_resid_fitted.
685            * tests/sparseQR.R: Added
686            * man/sparseQR-class.Rd: Document methods for qr.* generics
687            * R/sparseQR.R: Return correct # of coefs; fix cut-and-paste errors
688    
689    2006-08-19  Douglas Bates  <bates@R-project.org>
690    
691            * NAMESPACE, R/sparseQR.R, src/init.c,sparseQR.[ch],SOURCES_C.mkf:
692            Added methods for sparseQR for qr.qy, qr.qty, qr.coef, qr.resid
693            and qr.fitted.
694            * src/Mutils.[ch]: Added dup_mMatrix_as_dgeMatrix utility
695            * src/dgCMatrix.c: Check for ordering before storing q in dgCMatrix_QR
696    
697    2006-08-18  Martin Maechler  <maechler@stat.math.ethz.ch>
698    
699            * R/AllGeneric.R: add "qr" and "chol" generics; via 'trick' since
700            the base version has no "..." argument.
701    
702            * R/sparseMatrix.R (prSpMatrix): fix the triangular unit diagonal case.
703    
704            * R/Matrix.R: define and
705            * NAMESPACE: export as.numeric() and as.logical() methods.
706                    Let's hope these do not badly slow down something...
707            Finally export the zapsmall() method.
708    
709    2006-08-17  Douglas Bates  <bates@R-project.org>
710    
711            * src/dgCMatrix.[ch] (dgCMatrix_matrix_solve), src/init.c,
712            R/dgCMatrix.R: solve methods for dgCMatrix and dense RHS.
713            * src/dtCMatrix.c :Remove code that is no longer used
714            * R/dtCMatrix.R: Use C code for diagU2N in CsparseMatrix classes
715    
716    2006-08-14  Douglas Bates  <bates@R-project.org>
717    
718            * src/Csparse.[ch],init.c (Csparse_to_logical): Added utilities
719            Csparse_to_logical and Csparse_symmetric_to_general.
720            * R/dgCMatrix.R,dsCMatrix.R,Csparse.R : Consolidate general
721            coercion methods between CsparseMatrix and TsparseMatrix.
722    
723    2006-08-14  Douglas Bates  <bates@R-project.org>
724    
725            * R/dtCMatrix.R,dgCMatrix.R,Csparse.R src/init.c,dgCMatrix.[ch],
726            Csparse.[ch],chm_common.c,dense.c : Use CHOLMOD code and methods
727            for CsparseMatrix, TsparseMatrix, denseMatrix or matrix when
728            possible.
729    
730    2006-08-12  Douglas Bates  <bates@R-project.org>
731    
732            * src/chm_common.[ch],Csparse.[ch],Tsparse.[ch],CHMfactor.c,dtTMatrix.c,
733              dgTMatrix.c,dgCMatrix.c,dsCMatrix.c,dtTMatrix.c, R/dsTMatrix.R,
734              Tsparse.R,Csparse.R,dgTMatrix.R,dsCMatrix.R,lsCMatrix.R:
735              generalize conversions between TsparseMatrix, CsparseMatrix,
736              denseMatrix and matrix.  Preserve triangularity property and
737              propagate Dimnames in the easy cases.
738    
739    2006-08-10  Douglas Bates  <bates@R-project.org>
740    
741            * src/lmer.c: adjust checks in glmer_init for S4SXP
742            * tests/validObj.R: check of all(eq) should be all(eq@x) - worked
743            before S4SXP but for the wrong reasons.
744    
745    2006-08-08  Douglas Bates  <bates@R-project.org>
746    
747            * src/Csparse.c (Csparse_crossprod): tcrossprod result has stype = -1.
748            Later modified to return the upper triangle only.
749            * R/dgTMatrix.R: Remove vestigial crossprod and tcrossprod methods.
750    
751    2006-08-07  Douglas Bates  <bates@R-project.org>
752    
753            * src/Csparse.c (Csparse_crossprod): Set stype on result to avoid
754            R-level conversion to a sparse symmetric class.
755            * R/Tsparse.R,R/Csparse.R (crossprod and tcrossprod methods):
756            Remove conversion to sparse symmetric classes (now done in C code).
757    
758    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
759    
760            * R/dgCMatrix.R: disable old crossprod and tcrossprod methods
761            * man/band.Rd:  adapt the \dontshow{} unit test.
762    
763    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
764    
765            * DESCRIPTION (Version): 0.995-14  for CRAN
766    
767            * tests/other-pkgs.R: oops: library(Matrix) outside *if* !
768    
769            * R/sparseMatrix.R (Tsp2grNEL): fixed Tsparse -> graph coercion
770            * tests/other-pkgs.R:  more checks, sparseMatrix -> graph
771    
772            * R/Auxiliaries.R (as_Tsparse, as_Rsparse): new
773            * R/Tsparse.R (tril, triu, band): methods
774            * R/dgRMatrix.R (tril, ...):    ditto
775            * man/band.Rd:                  ditto
776    
777    2006-08-04  Martin Maechler  <maechler@stat.math.ethz.ch>
778    
779            * R/Matrix.R (head, tail): directly use utils:::head.matrix
780                    to be up-to-date automatically.
781    
782    2006-08-03  Martin Maechler  <maechler@stat.math.ethz.ch>
783    
784            * DESCRIPTION (Version): 0.995-13 to be released to CRAN
785    
786            * DESCRIPTION (Lazydata): no, instead of 'yes' because it fails for:
787            * data/CAex.R, inst/external/CAex_slots.rda: replacing data/CAex.rda
788            * data/KNex.R, inst/external/KNex_slots.rda: replacing data/KNex.rda
789            such that the S4 objects are always created by the current version
790            of R and 'Matrix' class definitions.
791    
792    2006-08-01  Douglas Bates  <bates@R-project.org>
793    
794            * R/lmer.R (LMEoptimize method), tests/lmer.R,
795            inst/external/test3comp.rda: Added warnings for convergence on
796            boundary and test cases.
797    
798            * src/lmer.c (mer_postVar): Modified to return the variances that
799            are marginal to the fixed effects, not conditional on them (which
800            is what the bVar slot contents represent).
801    
802    2006-07-31  Douglas Bates  <bates@R-project.org>
803    
804            * NAMESPACE, src/lmer.c, R/lmer.R (hatTrace):  Add the hatTrace
805            function which calls the C function mer_hat_trace2.
806    
807            * man/ranef.Rd: Include description of "postVar" argument and
808            producing a caterpillar plot.
809    
810    2006-07-31  Martin Maechler  <maechler@stat.math.ethz.ch>
811    
812            * NAMESPACE:    change  "correlation" to "corMatrix"
813            * R/AllClass.R: to avoid clash with S3 class in 'nlme'.
814            * R/dpoMatrix.R: ditto
815            * R/lmer.R:      ditto
816    
817    2006-07-28  Douglas Bates  <bates@R-project.org>
818    
819            * src/lmer.c (internal_mer_RZXinv): Split the calculation of the
820            RZXinv slot's contents into a separate internal function that can
821            be used in mer_hat_trace.
822    
823    2006-07-22  Martin Maechler  <maechler@stat.math.ethz.ch>
824    
825            * R/Matrix.R: Coercions "Matrix" -> (sparse|dense)Matrix
826            via new smart
827            * R/Auxiliaries.R (as_Csparse, as_dense, .M.shapse): new
828            utility functions.
829    
830    
831    2006-07-21  Martin Maechler  <maechler@stat.math.ethz.ch>
832    
833            * R/Csparse.R (tril, triu, band): do return *triangular* classed
834            matrices when appropriate; band() even symmetric ones.
835            (replCmat): extend to potentially all "CsparseMatrix"
836            * R/Tsparse.R (replTmat): extend to all "TsparseMatrix"; hence
837            allow subassignment for special sparse matrices.
838    
839            * R/Auxiliaries.R (as_geClass): factor out the  .M.kind() functionality
840    
841            * src/lmer.c (mer_MCMCsamp, glmer_MCMCsamp): new 'verbose'
842            argument; in glmer_*(): print only if(verbose).
843    
844            speed-optimize a few places by moving REAL(.) out of loops.
845    
846            * src/lmer.h, src/init.h, R/lmer.R:  related to above.
847    
848    2006-07-20  Martin Maechler  <maechler@stat.math.ethz.ch>
849    
850            * R/Matrix.R("["): disable ("Matrix", i = "logical", j = "missing"),
851                    since that wrongly triggers also for M[ logi , ]
852    
853            * R/denseMatrix.R: "[" methods now also work e.g. when indexing
854            a symmetric matrix that results in a non-symmetric one.
855            * R/Auxiliaries.R (as_geClass): new function used in "[" above.
856    
857            * R/dMatrix.R: make round(M) work as round(M, 0)
858    
859            * R/dgTMatrix.R (image): coordinate system and axis now use
860            1-based indices, not 0-based ones.
861    
862            * R/Tsparse.R (.ind.prep for "["): get rid of max(<empty>) warning.
863            * tests/indexing.R: test it.
864    
865            * NAMESPACE: export isSymmetric(); has been a generic in "base" for a while;
866            * man/isSymmetric-methods.Rd: and document it.
867    
868            * R/SparseM-conv.R: added coercion methods for some 'SparseM' matrices.
869            * man/SparseM-conv.Rd: docu them
870    
871            * tests/other-pkgs.R: renamed from tests/graph.R and add example
872                    for 'SparseM' conversions
873    
874    2006-07-17  Douglas Bates  <Douglas.Bates@R-project.org>
875    
876            * R/Matrix.R (head): added head() and tail() methods.
877    
878    2006-07-17  Martin Maechler  <maechler@stat.math.ethz.ch>
879    
880            * DESCRIPTION (Version): 0.995-12 released to CRAN
881    
882    2006-07-15  Martin Maechler  <maechler@stat.math.ethz.ch>
883    
884            * tests/simple.R: add check for correct dsT -> dgT coercion;
885                    add check for correct printing of symmetric sparse matrices.
886    
887            * R/Auxiliaries.R (non0ind): return *all* non-0 entry indices also
888            for sparse symmetric matrices.
889    
890            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): do not copy the
891            diagonal twice.
892    
893    2006-07-11  Douglas Bates  <Douglas.Bates@R-project.org>
894    
895            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): Fix a case of INTEGER
896            being applied to the x slot (detected by Brian Ripley).
897    
898    2006-07-10  Martin Maechler  <maechler@stat.math.ethz.ch>
899    
900            * src/dgCMatrix.c (dgCMatrix_validate): 'p' slot must have correct length.
901    
902            * R/Auxiliaries.R (isTriC): fix buglet (we were 1-based!)
903    
904    2006-07-08  Martin Maechler  <maechler@stat.math.ethz.ch>
905    
906            * src/lgCMatrix.c (lgCMatrix_diag): new function
907            * R/lgCMatrix.R (diag): for new method
908    
909            * R/AllClass.R (TsparseMatrix): do use Tsparse_validate
910                 ==> construction of illegal "*gTMatrix" via new() should
911                 now be much less easy:
912            * tests/Class+Meth.R: assertError() for some illegal "dgT*"
913    
914            * R/Matrix.R (Matrix): Matrix(0, nrow,ncol) now "goes sparse"
915                    directly.
916            * man/Matrix.Rd: documents it.
917    
918    2006-07-06  Douglas Bates  <bates@R-project.org>
919    
920            * src/pedigree.c (pedigree_inbreeding): Correction in
921            initialization.  This function is not currently being used and is
922            not fully tested.
923    
924            * NAMESPACE, R/{AllClass.R,lmer.R}, src/{init.c,lmer.c}:
925            Introduced the glmer class.  Added code for mcmcmsamp on glmer
926            objects.  Modified validity check on pedigree objects to account
927            for nonparallel patterns of missingness of parents.
928    
929            * man/{lmer-class.Rd,mcmcsamp.Rd}: Update documentation for glmer
930            class.
931    
932    2006-07-01  Martin Maechler  <maechler@stat.math.ethz.ch>
933    
934            * R/pMatrix.R: coercion pMatrix -> Tsparse
935    
936    2006-06-12  Douglas Bates  <bates@R-project.org>
937    
938            * DESCRIPTION (Version): 0.995-11 released to CRAN
939    
940            * R/lmer.R (mcmcsamp method): Corrected arrangments of names on
941            the output from mcmcsamp.
942    
943  2006-06-10  Douglas Bates  <bates@R-project.org>  2006-06-10  Douglas Bates  <bates@R-project.org>
944    
945          * R/lmer.R (simulestimate): added          * R/lmer.R (simulestimate): added C code for calculating the trace
946            of the hat matrix.
947    
948  2006-06-09  Martin Maechler  <maechler@stat.math.ethz.ch>  2006-06-09  Martin Maechler  <maechler@stat.math.ethz.ch>
949    
950          * R/diagMatrix.R (setAs): define coercion methods to sparse matrix          * R/diagMatrix.R (setAs): define coercion methods to sparse matrix
951          classes.          classes.
952            * R/sparseMatrix.R etc: multiplication of diagonal and sparse
953    
954  2006-06-08  Martin Maechler  <maechler@stat.math.ethz.ch>  2006-06-08  Martin Maechler  <maechler@stat.math.ethz.ch>
955    
# Line 43  Line 987 
987    
988          * R/sparseMatrix.R: Matrix <-> graph methods: can no longer use          * R/sparseMatrix.R: Matrix <-> graph methods: can no longer use
989          the C code depending on a slot structure that's no longer valid.          the C code depending on a slot structure that's no longer valid.
990          * src/dgTMatrix.c: dito (also: src/init.c src/dgTMatrix.h)          * src/dgTMatrix.c: ditto (also: src/init.c src/dgTMatrix.h)
991    
992    
993  2006-05-17  Douglas Bates  <bates@stat.wisc.edu>  2006-05-17  Douglas Bates  <bates@stat.wisc.edu>
# Line 166  Line 1110 
1110          * data/KNex.rda: replacing 'mm' and 'y' by KNex <- list(mm=mm, y=y)          * data/KNex.rda: replacing 'mm' and 'y' by KNex <- list(mm=mm, y=y)
1111          * man/KNex.Rd: and other help files          * man/KNex.Rd: and other help files
1112          * tests/*.R: several ones needed adaption          * tests/*.R: several ones needed adaption
1113          * inst/doc/Comparisons.Rnw: dito          * inst/doc/Comparisons.Rnw: ditto
1114    
1115  2006-03-11  Martin Maechler  <maechler@stat.math.ethz.ch>  2006-03-11  Martin Maechler  <maechler@stat.math.ethz.ch>
1116    
# Line 370  Line 1314 
1314  2005-08-26  Martin Maechler  <maechler@stat.math.ethz.ch>  2005-08-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1315    
1316          * R/Matrix.R:  added first "[<-" methods; not yet functional          * R/Matrix.R:  added first "[<-" methods; not yet functional
1317          * R/denseMatrix.R: dito          * R/denseMatrix.R: ditto
1318          * man/Subassign-methods.Rd: new help file for these          * man/Subassign-methods.Rd: new help file for these
1319    
1320  2005-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>  2005-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>

Legend:
Removed from v.1298  
changed lines
  Added in v.1748

root@r-forge.r-project.org
ViewVC Help
Powered by ViewVC 1.0.0  
Thanks to:
Vienna University of Economics and Business Powered By FusionForge