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 848, Thu Aug 11 07:41:59 2005 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>
944    
945            * 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>
949    
950            * R/diagMatrix.R (setAs): define coercion methods to sparse matrix
951            classes.
952            * R/sparseMatrix.R etc: multiplication of diagonal and sparse
953    
954    2006-06-08  Martin Maechler  <maechler@stat.math.ethz.ch>
955    
956            * R/dgTMatrix.R (colSums): etc. All four of
957            colSums(), rowSums(), colMeans(), rowMeans() now should work for
958            all "Matrices".
959    
960    2006-06-01  Douglas Bates  <bates@stat.wisc.edu>
961    
962            * R/lmer.R (panel.ci): Add a reference line at zero and a
963            background grid to the qqmath plot of ranef.lmer.
964    
965    2006-05-30  Douglas Bates  <bates@stat.wisc.edu>
966    
967            * R/lmer.R (expandSlash): Functions (non-exported) to allow nested
968            grouping factors to be specified in the formula as (1|foo/bar).
969    
970    2006-05-27  Douglas Bates  <bates@stat.wisc.edu>
971    
972            * R/lmer.R (findbars and others): Change check of is.numeric to
973            !is.language to resolve the bug reported by Jacob Wegelin.
974    
975            * src/pedigree.c (pedigree_inbreeding): Initial implementation of
976            code to evaluate inbreeding coefficients without calculating T,
977            based on code in Sargolzaei and Iwaisaki's paper.
978    
979    2006-05-27  Douglas Bates  <bates@stat.wisc.edu>
980    
981            * R/{lmer.R,AllGeneric.R}, src/{init.c,lmer.[ch]}: Added local
982            generic and mer methods for isNested and denomDF. This denomDF was
983            an attempt to emulate that in lme but I don't think that makes
984            sense.  Use the trace of the hat matrix instead.
985    
986    2006-05-17  Martin Maechler  <maechler@stat.math.ethz.ch>
987    
988            * R/sparseMatrix.R: Matrix <-> graph methods: can no longer use
989            the C code depending on a slot structure that's no longer valid.
990            * src/dgTMatrix.c: ditto (also: src/init.c src/dgTMatrix.h)
991    
992    
993    2006-05-17  Douglas Bates  <bates@stat.wisc.edu>
994    
995            *  R/{AllGeneric.R,Csparse.R},man/band.Rd,NAMESPACE: changed name
996            of lowerTriMatrix generic and methods to tril (also upper to triu)
997            and added a general band extractor.
998    
999    2006-05-16  Douglas Bates  <bates@stat.wisc.edu>
1000    
1001            * R/pedigree.R (pedigree): Replace sire and dam values outside the
1002            allowable range with NAs. Added a corresponding check in the
1003            validity check for the pedigree class.
1004    
1005            * R/[CT]sparse.R ([t]crossprod): The result of single-argument
1006            crossprod methods now inherits from symmetricMatrix.
1007    
1008    2006-05-15  Douglas Bates  <bates@stat.wisc.edu>
1009    
1010            * R/AllGeneric.R (lowerTriMatrix): Added (but did not export)
1011            generics lowerTriMatrix and upperTriMatrix along with methods for
1012            the Csparse virtual class.  Also added a C function Csparse_band
1013            that implements these methods by calling cholmod_band.
1014    
1015    2006-05-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1016    
1017            * R/Tsparse.R ("["): column or row subsetting; @Dimnames[k] got
1018            erased when it was NULL.  This led to invalid subselections!
1019    
1020    2006-04-25  Douglas Bates  <bates@stat.wisc.edu>
1021    
1022            * R/dtCMatrix.R: avoid coercion of dtCMatrix object to dgCMatrix
1023            in method for "t" so as not to lose the unit diagonal property.
1024    
1025    2006-04-19  Douglas Bates  <bates@stat.wisc.edu>
1026    
1027            * R/lmer.R, R/AllGeneric.R, NAMESPACE: Remove the postVar generic
1028            and methods.  This is now an option to the ranef method for the
1029            mer class.
1030    
1031            * src/cs_utils.c: Ensure that the nz component is -1 for a
1032            compressed column-oriented matrix.  Minor formatting cleanup.
1033    
1034            * man/lmer-class.Rd: Document the qqmath method for ranef.lmer
1035            objects.
1036    
1037    2006-04-19  Martin Maechler  <maechler@stat.math.ethz.ch>
1038    
1039            * R/Auxiliaries.R (diagU2N): new for the solve() methods in
1040            * R/dtCMatrix.R: where dgC -> dgT coercion now preserves diag = "U".
1041    
1042    2006-04-15  Douglas Bates  <bates@stat.wisc.edu>
1043    
1044            * src/cs.[ch],src/cs_utils.[ch] : Added Tim Davis' CSparse library
1045            in cs.[ch] and utilities to interface to that code in cs_utils.[ch].
1046    
1047            * R/dtCMatrix.R, src/dtCMatrix.[ch] : CSparse-based solve methods
1048            for the dtCMatrix class.
1049    
1050    2006-04-12  Douglas Bates  <bates@stat.wisc.edu>
1051    
1052            * R/pedigree.R, R/AllClass.R, NAMESPACE: added a pedigree class
1053            and methods for it.
1054    
1055    2006-04-12  Martin Maechler  <maechler@stat.math.ethz.ch>
1056    
1057            * R/dgCMatrix.R: add  storage.mode(.) <- "double" for "matrix"
1058            arguments, such that M %*% 1:6 now works
1059            * Tests/matprod.R: test the above
1060    
1061    2006-04-03  Douglas Bates  <bates@stat.wisc.edu>
1062    
1063            * R/lmer.R (qqmath,ranef.lmer-method): added a qqmath method for
1064            the ranef.lmer class.
1065    
1066            * R/AllClass.R, NAMESPACE, R/lmer.R: Added a postVar generic and
1067            methods to extract the posterior variances from the bVar slot.
1068    
1069    2006-03-30  Martin Maechler  <maechler@stat.math.ethz.ch>
1070    
1071            * R/dtCMatrix.R: allow coercion from  dgC* to triangular (dtC*)
1072            * R/dsCMatrix.R: and symmetric (dsC*) 'Csparse' matrices.
1073    
1074            * R/Tsparse.R: Tsparse* -> Csparse* coercion now works and is tested in
1075            * tests/simple: (extended)
1076    
1077            * R/sparseMatrix.R (isTriangular): now using much improved
1078            * R/Auxiliaries.R (isTriC): new triangularity check for *CMatrix
1079    
1080    2006-03-23  Douglas Bates  <bates@stat.wisc.edu>
1081    
1082            * src/dsyMatrix.c (dsyMatrix_as_dspMatrix): Propagate DimNames
1083            (problem report from Franklin Parlamis).  This should be done
1084            generally.
1085    
1086    2006-03-21  Douglas Bates  <bates@stat.wisc.edu>
1087    
1088            * R/AllClass.R,lmer.R: Change the name of the lmer.ranef class to
1089            ranef.lmer (like summary.lmer).  Add the coef.lmer class and
1090            update the plot methods.
1091    
1092    2006-03-20  Douglas Bates  <bates@stat.wisc.edu>
1093    
1094            * R/lmer.R (resid and ranef methods):  Added methods for the
1095            "residuals" and "resid" generic but only for linear mixed model
1096            fits.  Changed the ranef method to return a list of data frames so
1097            that the plot methods now work.
1098    
1099    2006-03-16  Douglas Bates  <bates@bates2>
1100    
1101            * src/dpoMatrix.c (dpoMatrix_chol): Require n > 0 in call to
1102            dpotrf - otherwise the BLAS on Mac OS X complains and quits.
1103    
1104            * DESCRIPTION (Date): New release
1105    
1106    2006-03-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1107    
1108            * DESCRIPTION (Version): 0.995-6  -- to be released to CRAN
1109    
1110            * data/KNex.rda: replacing 'mm' and 'y' by KNex <- list(mm=mm, y=y)
1111            * man/KNex.Rd: and other help files
1112            * tests/*.R: several ones needed adaption
1113            * inst/doc/Comparisons.Rnw: ditto
1114    
1115    2006-03-11  Martin Maechler  <maechler@stat.math.ethz.ch>
1116    
1117            * R/dgCMatrix.R (replCmat): "[<-" methods for dgCMatrix
1118    
1119            * tests/indexing.R: tests for new [<- methods for sparse matrices.
1120    
1121    2006-03-10  Martin Maechler  <maechler@stat.math.ethz.ch>
1122    
1123            * R/dgTMatrix.R (replTmat): "[<-" methods for dgTMatrix
1124    
1125            * R/Tsparse.R (.ind.prep): fix out-of-range indexing
1126    
1127    2006-03-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1128    
1129            * R/dMatrix.R: enable things like  M [ M < 10 ]
1130            * R/dgeMatrix.R: implement it
1131    
1132    2006-03-06  Martin Maechler  <maechler@stat.math.ethz.ch>
1133    
1134            * R/AllClass.R: define "summary.mer" and "*.lmer"
1135            * R/lmer.R (summary): summary(<mer>) computes & returns the above;
1136            * R/lmer.R (show): now works with summary()
1137    
1138    2006-03-04  Martin Maechler  <maechler@stat.math.ethz.ch>
1139    
1140            * R/dgCMatrix.R: finally direct "Arith"  dgC o dgC
1141            * R/Auxiliaries.R (WhichintersectInd): and other utilities to
1142                    support the above
1143    
1144    2006-02-07  Douglas Bates  <bates@stat.wisc.edu>
1145    
1146            * R/lmer.R (lmer): fix initial values of offset and weights for glm.fit.
1147            Use glmFit$prior.weights for weights in a glmm.
1148            Allow an option usePQL = FALSE to skip the PQL steps for the
1149            Laplace method (and, in time, the AGQ method).
1150    
1151            * src/lmer.c (mer_factor): Move downdating and factoring of XtX
1152            into a separate function internal_mer_Xfactor to be able to call
1153            it from internal_bhat.
1154    
1155    2006-01-23  Martin Maechler  <maechler@stat.math.ethz.ch>
1156    
1157            * tests/Class+Meth.R (tstMatrixClass): function for much better
1158            testing; now again of all actual classes.
1159    
1160            * src/Mutils.c (MAKE_TRIANGULAR_BODY, MAKE_SYMMETRIC_BODY):
1161                    use macros and define make_d_matrix_* and make_i_matrix_*
1162                    where _i_ is for the ldense routines:
1163    
1164            * src/ldense.c (ltrMatrix_as_lgeMatrix): provide functions
1165            * src/ldense.c (lsyMatrix_as_lgeMatrix):
1166    
1167            * R/ldenseMatrix.R: use the above in setAs(*,"lgeMatrix")
1168    
1169    
1170    2006-01-16  Martin Maechler  <maechler@stat.math.ethz.ch>
1171    
1172            * R/Matrix.R (Matrix): has become much "smarter" now auto-producing
1173                    many different kinds of matrices.
1174            * R/*.R: quite a few new methods were needed for R CMD check with
1175                    new Matrix().  Very good for users playing around.
1176    
1177    
1178    2006-01-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1179    
1180            * src/dgeMatrix.c (dMatrix_validate): new
1181            * src/Mutils.c (dense_nonpacked_validate): new
1182    
1183            * src/dtrMatrix.c (dtrMatrix_validate): improved/fixed
1184    
1185    
1186    2006-01-14  Douglas Bates  <bates@stat.wisc.edu>
1187    
1188            * R/AllClass.R (compMatrix), (generalMatrix): new virtual classes
1189    
1190    2006-01-07  Douglas Bates  <bates@stat.wisc.edu>
1191    
1192            * DESCRIPTION (Version): 0.99-6 released to CRAN
1193    
1194            * src/dgBCMatrix.c (cscb_trcbsm): Fix due to Peter Dalgaard for
1195            segfault in cases with multiple non-nested grouping factors.
1196    
1197    2006-01-03  Martin Maechler  <maechler@stat.math.ethz.ch>
1198    
1199            * DESCRIPTION (Version): 0.99-4 to be released to CRAN
1200                    (Depends): also on 'utils'
1201    
1202            * R/AllClass.R (diagonalMatrix): new class with "ddi*" and "ldi*"
1203            * R/diagMatrix.R (Diagonal): constructor and methods for
1204            diagonal matrices
1205    
1206            * R/ltTMatrix.R: new "minimal methods"
1207    
1208    2005-12-12  Martin Maechler  <maechler@stat.math.ethz.ch>
1209    
1210            * R/AllGeneric.R (tcrossprod): 2-argument version; here, and for
1211            all methods (and help files).
1212    
1213    2005-12-09  Martin Maechler  <maechler@stat.math.ethz.ch>
1214    
1215            * R/Auxiliaries.R (dimNamesCheck): fixed thinko -> bug
1216                    for case (dimn.  op  no_dimn.)
1217    
1218    2005-11-14  Douglas Bates  <bates@stat.wisc.edu>
1219    
1220            * DESCRIPTION (Version): 0.99-2  released to CRAN
1221    
1222    2005-10-21  Douglas Bates  <bates@stat.wisc.edu>
1223    
1224            * R/lmer.R (simulate method): Fixed a drop=FALSE problem reported
1225            by Julian Faraway.
1226    
1227    2005-10-06  Martin Maechler  <maechler@stat.math.ethz.ch>
1228    
1229            * R/Auxiliaries.R (try_as): new utility
1230            * R/sparseMatrix.R: use try_as() in coercion to original class
1231    
1232    2005-09-30  Martin Maechler  <maechler@stat.math.ethz.ch>
1233    
1234            * src/dgCMatrix.c (double_to_csc): and dgeMatrix_to_csc()
1235    
1236    2005-09-29  Martin Maechler  <maechler@stat.math.ethz.ch>
1237    
1238            * R/Auxiliaries.R (dimNamesCheck): added
1239    
1240            * R/Matrix.R (as.array), (as.vector): new
1241    
1242    2005-09-28  Martin Maechler  <maechler@stat.math.ethz.ch>
1243    
1244            * R/Matrix.R (Matrix): get logical argument 'sparse' with a smart
1245                    default.
1246            * R/AllClass.R: move 'factors' slot toplevel "Matrix";
1247                    "pMatrix" now contains "sparseMatrix"
1248    
1249    2005-09-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1250    
1251            * tests/Class+Meth.R: new tests; t(t(m)) == m
1252    
1253            * src/dtCMatrix.c (tsc_transpose): add forgotten "diag" slot
1254    
1255            * src/dsTMatrix.c (dsTMatrix_as_dsCMatrix): bad typo (segfault!)
1256            * src/dtTMatrix.c (dtTMatrix_as_dtCMatrix): new
1257    
1258            * R/dspMatrix.R: typo in "t" method
1259    
1260    2005-09-18  Douglas Bates  <bates@wisc.edu>
1261    
1262            * R/AllClass.R (TsparseMatrix), CsparseM* and RsparseM*
1263            * R/Tsparse.R: instead of R/gTMatrix.R
1264            * R/Csparse.R: new
1265            * src/Tsparse.c (Tsparse_to_Csparse): new; -> cholmod_()
1266            * src/Tsparse.c: new; many trivial methods calling cholmod_()
1267            * src/Csparse.c (Csparse_to_Tsparse), transpose, (mat|cross)prod:
1268                            via cholmod
1269    
1270    2005-09-16  Martin Maechler  <maechler@stat.math.ethz.ch>
1271    
1272            * R/Auxiliaries.R (non0ind): new function using new C code
1273            * src/dgCMatrix.c (compressed_non_0_ij): new utility
1274    
1275    2005-09-15  Douglas Bates  <bates@localhost.localdomain>
1276    
1277            * src/chm_common.h: header file required by all C sources that
1278            call CHOLMOD functions.  It defines a cholmod_common structure
1279            called 'c' whose address is passed as the last argument to
1280            (virtually) every CHOLMOD function.
1281    
1282            * src/Pattern.c: Simple example of the use of CHOLMOD.
1283    
1284            * src/init.c: initialize and finalize the cholmod_common structure.
1285    
1286            * src/Makefile: Added source packages CHOLMOD UMFPACK AMD COLAMD
1287            LDL and CCOLAMD from the U. of Florida sparse matrix library.
1288    
1289    2005-09-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1290    
1291            * inst/test-tools.R: new file collecting the utility functions used
1292                    in ./tests/*.R
1293    
1294            * R/ddenseMatrix.R (cbind2): new methods for "numeric" and "matrix"
1295            * R/Matrix.R (cbind2): methods for NULL and missing
1296    
1297    2005-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
1298    
1299            * R/AllClass.R: new "index" class for "[" and "[<-":
1300                    First cut at "symmetricMatrix" and "triangularMatrix"
1301            * R/gTMatrix.R (.ind.prep): new function;
1302                    Logical and character indexing now work too.
1303            * R/Matrix.R: cheap "[<-" methods for denseMatrix now work
1304            * tests/indexing.R: new, including *.Rout.save
1305            * tests/dgTMatrix.R: new
1306    
1307    2005-08-29  Douglas Bates  <bates@wisc.edu>
1308    
1309            * src/dgTMatrix.c (graphNEL_as_dgTMatrix): Corrected the position
1310            indicator pos not being updated.  Also enforced upper triangular
1311            for symmetric case.  Need to coerce edges component of elements of
1312            edge list - grr! (Why don't they define their classes cleanly?)
1313    
1314    2005-08-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1315    
1316            * R/Matrix.R:  added first "[<-" methods; not yet functional
1317            * R/denseMatrix.R: ditto
1318            * man/Subassign-methods.Rd: new help file for these
1319    
1320    2005-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>
1321    
1322            * DESCRIPTION (Version): 0.98-6
1323    
1324            * R/denseMatrix.R: new file for "[" fallback methods for all dense
1325            matrices.
1326    
1327    2005-08-19  Martin Maechler  <maechler@stat.math.ethz.ch>
1328    
1329            * src/lgCMatrix.c (lcsc_to_matrix): new; need for
1330                    as( <logical>, "matrix")
1331    
1332            * R/pMatrix.R: coercion to "lgTMatrix"
1333    
1334            * R/gTMatrix.R: new virtual class to define "[" methods for.
1335            * man/gTMatrix-class.Rd:
1336            * General slight re-organization of where "[" methods are defined.
1337              more to come.
1338    
1339    2005-08-18  Douglas Bates  <bates@wisc.edu>
1340    
1341            * DESCRIPTION (Version): 0.98-5  released to CRAN
1342    
1343            * src/dgTMatrix.c (graphNEL_as_dgTMatrix): add first graphNEL methods
1344            * .....
1345    
1346    2005-08-18  Douglas Bates  <bates@localhost.localdomain>
1347    
1348            * R/lmer.R: Corrected naming scheme in mcmcsamp to work with lmer
1349            or glmer objects.
1350    
1351    2005-08-17  Martin Maechler  <maechler@stat.math.ethz.ch>
1352    
1353            * DESCRIPTION (Version): 0.98-4 : upload to CRAN
1354    
1355    2005-08-16  Douglas Bates  <bates@localhost.localdomain>
1356    
1357            * R/HBMM.R: finish re-writing R-only code.
1358    
1359    2005-08-15  Douglas Bates  <bates@localhost.localdomain>
1360    
1361            * man/externalFormats.Rd: move documentation for writeHB and
1362            writeMM here.
1363    
1364            * src/mmio.c: replace inclusion of <malloc.h> by <stdlib.h>
1365            (suggested by Paul Roecker).
1366    
1367            * tests/validObj.R (assertError): Comment out test that is failing
1368            after recent changes in r-devel.
1369    
1370    
1371  2005-08-11  Martin Maechler  <maechler@stat.math.ethz.ch>  2005-08-11  Martin Maechler  <maechler@stat.math.ethz.ch>
1372    
1373          * R/AllClass.R: intermediate virtual class "denseMatrix"          * R/AllClass.R: intermediate virtual class "denseMatrix"

Legend:
Removed from v.848  
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