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 388, Mon Dec 13 16:00:22 2004 UTC revision 1893, Thu Jun 14 10:46:10 2007 UTC
# Line 1  Line 1 
1  2004-12-13  Douglas Bates  <bates@bates1-home>  2007-06-14  Martin Maechler  <maechler@stat.math.ethz.ch>
2    
3            * src/Csparse.c (Csparse_validate): check for *repeated* entries
4            thanks to example from Christian Buchta; with a test here:
5            * tests/simple.R:
6    
7    2007-06-07  Martin Maechler  <maechler@stat.math.ethz.ch>
8    
9            * R/Auxiliaries.R (callGeneric): another fix, needed for some cases
10            of colSums(*, sparseResult = TRUE)
11    
12    2007-06-06  Martin Maechler  <maechler@stat.math.ethz.ch>
13    
14            * R/lsparseMatrix.R, R/ldenseMatrix.R (all, any): change default to
15            'na.rm = FALSE' as "everywhere" else in R.
16    
17    2007-06-05 Douglas Bates <bates@stat.wisc.edu>
18    
19            * [r4421] src/CSparse_install.sh: Modify for new organization of
20              CSparse package
21            * [r4425] src/UFsparse_download.sh: Update to version 3.0.0 of
22              SuiteSparse
23            * [r4426] src/Makefile: add ./UFconfig to the include path for
24              compilation
25            * [r4427] src/cs.[ch]: update to CSparse version 2.2.0
26            * [r4428] inst/doc/UFsparse/* src/{AMD,CHOLMOD,COLAMD}/*
27              src/UFconfig/UFconfig.h: Update to version 3.0.0 of SuiteSparse
28    
29    2007-06-05  Martin Maechler  <maechler@stat.math.ethz.ch>
30    
31            * R/Auxiliaries.R (emptyColnames): + argument msg.if.not.empty, used in
32            * R/sparseMatrix.R (prSpMatrix): now gives a message about
33            suppressed column names.
34    
35    2007-06-04 17:13  Douglas Bates <bates@stat.wisc.edu>
36    
37            * [r4418] src/Csparse.c, src/HBMM.c, src/Mutils.c, src/Mutils.h,
38              src/Tsparse.c, src/chm_common.c, src/chm_common.h, src/dgCMatrix.c,
39              src/dgeMatrix.c, src/dpoMatrix.c, src/dpoMatrix.h, src/dppMatrix.c,
40              src/dppMatrix.h, src/dsCMatrix.c, src/dspMatrix.c, src/dspMatrix.h,
41              src/dsyMatrix.c, src/dsyMatrix.h, src/dtpMatrix.c, src/dtrMatrix.c:
42              Remove warnings after change to const char* CHAR
43    
44    2007-06-04 17:11  Douglas Bates <bates@stat.wisc.edu>
45    
46            * [r4417] inst/include/Matrix_stubs.c, inst/include/cholmod.h: Corrected
47              type of M_cholmod_ssmult
48    
49    2007-06-03 14:42  Douglas Bates <bates@stat.wisc.edu>
50    
51            * [r4412] inst/include/Matrix_stubs.c, inst/include/cholmod.h,
52              src/init.c: Yet another cholmod export - cholmod_ssmult
53    
54    2007-05-23  Martin Maechler  <maechler@stat.math.ethz.ch>
55    
56            * NAMESPACE: exported drop0(), since
57            * man/drop0.Rd: I have seen several cases, I really wanted to use
58            it, so our users may want too.
59    
60    2007-05-22  Martin Maechler  <maechler@stat.math.ethz.ch>
61    
62            * man/colSums.Rd: separately document colSums() etc, since these
63            have the extra argument 'sparseResult'.
64    
65    2007-05-21  Martin Maechler  <maechler@stat.math.ethz.ch>
66    
67            * R/sparseMatrix.R (spMatrix): utility (T)sparse Matrix constructor;
68            * man/spMatrix.Rd: docu., including examples
69    
70            * R/Auxiliaries.R (sp.colMeans): etc, using a patched callGeneric(),
71            in order to make colMeans() etc fast *and* correct.
72            * R/sparseVector.R (replSPvec): "[<-" functionality for
73            sparseVectors; tested in
74            * tests/simple.R:
75    
76    2007-05-19  Martin Maechler  <maechler@stat.math.ethz.ch>
77    
78            * R/sparseMatrix.R (print.sparseSummary): and summary() method for
79            (very) sparse Matrices; output similar to Matlab's print().
80    
81    2007-05-17  Douglas Bates  <bates@stat.wisc.edu>
82    
83            * src/HBMM.c (Matrix_writeMatrixMarket): Write 1-based, not
84            0-based, indices (Jose Quesada <quesada@gmail.com>).
85    
86    2007-05-16  Douglas Bates  <bates@stat.wisc.edu>
87    
88            * R/CHMfactor.R: Added solve methods for a CHMfactor object.
89    
90    2007-05-16  Martin Maechler  <maechler@stat.math.ethz.ch>
91    
92            * R/Auxiliaries.R (sparsapply): new utility, much faster than
93            tapply1() for large sparse matrices.
94    
95    2007-05-15  Martin Maechler  <maechler@stat.math.ethz.ch>
96    
97            * R/Matrix.R (dim<-): reshape now via sparseVector.
98    
99            * R/sparseVector.R: methods and function for
100            * R/AllClass.R: new "sparseVector" class and daughters.
101            * NAMESPACE: export new classes
102    
103    2007-05-14  Martin Maechler  <maechler@stat.math.ethz.ch>
104    
105            * DESCRIPTION (Version): 0.99875-1
106            * src/Makefile.win: also remove Lapack code from here (cf. 04-25).
107    
108    2007-05-11  Martin Maechler  <maechler@stat.math.ethz.ch>
109    
110            * R/Tsparse.R ([, Tsparse): fix last case: *duplicated*, symmetric
111            indexing
112            * tests/indexing.R: test set for that.
113    
114    2007-05-08  Martin Maechler  <maechler@stat.math.ethz.ch>
115    
116            * R/Tsparse.R (replTmat): fix the case of *duplicated* index
117            entries.
118            * tests/indexing.R(out): add regression test for it
119    
120    2007-04-30  Martin Maechler  <maechler@stat.math.ethz.ch>
121    
122            * R/(l(dense|sparse))?Matrix.R (!): use 'x', not 'e1' as argument
123            name for "!" method definitions.
124    
125    2007-04-26  Martin Maechler  <maechler@stat.math.ethz.ch>
126    
127            * R/Tsparse.R (intI): new utility, used for "[" :
128                    Cleanup up there, and fixes for duplicated indices - more TODO!
129    
130            * tests/indexing.R(out): more tests
131    
132    2007-04-25  Douglas Bates  <bates@stat.wisc.edu>
133    
134            * DESCRIPTION,src/Makefile: require R>= 2.5.0 and remove Lapack
135            code that is now part of the R Lapack library.
136    
137            * src/init.c,inst/include/{Matrix_stubs.c,cholmod.h}:export
138            cholmod_factorize_p (used in lme4 for GLMMs and NLMMs).
139    
140    2007-04-21  Martin Maechler  <maechler@stat.math.ethz.ch>
141    
142            * R/Matrix.R (image): method for all Matrices, not just sparse ones.
143    
144    2007-04-17  Martin Maechler  <maechler@stat.math.ethz.ch>
145    
146            * R/Auxiliaries.R (tapply1): unname(.) -> colSums() etc don't end
147            up with extraneous names '0'...'<n-1>'
148    
149    2007-04-12  Martin Maechler  <maechler@stat.math.ethz.ch>
150    
151            * R/dgTMatrix.R (mat2dgT): care about NAs
152    
153    2007-04-11  Martin Maechler  <maechler@stat.math.ethz.ch>
154    
155            * R/kronecker.R: triangularity preserving methods
156    
157    2007-03-27  Martin Maechler  <maechler@stat.math.ethz.ch>
158    
159            * R/kronecker.R: new file collecting kronecker() methods in one
160                    place.  Goal: become much faster!
161    
162    2007-03-23  Martin Maechler  <maechler@stat.math.ethz.ch>
163    
164            * src/dtCMatrix.c (dtCMatrix_solve): use the new code from Kasper
165            Kristensen based cs_spsolve() instead of _lsolve & _usolve which
166            can be much faster.
167    
168            * tests/matprod.R: add regression tests for these (upper & lower).
169    
170    2007-03-19  Martin Maechler  <maechler@stat.math.ethz.ch>
171    
172            * R/Matrix.R (diff): method for our Matrices.
173    
174            * R/sparseMatrix.R (isDiagonal): check dim()!
175    
176    2007-03-17  Martin Maechler  <maechler@stat.math.ethz.ch>
177    
178            * R/Matrix.R (dim<-): new method for "reshape()" built on a
179            proposal from Tamas Papp.
180    
181    2007-03-16  Martin Maechler  <maechler@stat.math.ethz.ch>
182    
183            * R/AllGeneric.R: remove all  if(!isGeneric(.))  clauses
184    
185            * R/zzz.R (.onLoad, .onUnload): do *not* leave bind_activation(TRUE);
186            rather define and export  cBind() and rBind() only.
187            --> useRs *must* change code that used to have cbind()/rbind() !!
188    
189            * R/bind.R: change tests from cbind() to cBind() and similarly to rBind()
190            * R/bind.Rout.save: ditto
191    
192    2007-02-16  Douglas Bates  <bates@r-project.org>
193    
194            * DESCRIPTION (Date, Version): 0.9975-11 with new date
195            * src/dgCMatrix.c (R_to_CMatrix, compressed_to_TMatrix): remove
196            const modifier on declaration of the array 'valid'
197    
198    2007-02-12  Douglas Bates  <bates@stat.wisc.edu>
199    
200            * R/CHMfactor.R: Add image method (coercion to sparseMatrix).
201    
202    2007-02-05  Martin Maechler  <maechler@stat.math.ethz.ch>
203    
204            * DESCRIPTION (Date, Version): 0.9975-10 with new date.
205    
206            * R/Ops.R (Arith): make sure Csparse o Csparse also works for e.g. ntCMatrix
207            * tests/simple.R: test the above and some of these coercions:
208    
209            * R/nsparseMatrix.R: coercing "Csparse" to "lsparseMatrix";
210                    be careful to avoid infinite recursion, using new coercions in
211            * R/ngCMatrix.R and nsC... and ntC...
212            * R/lsparseMatrix.R: ditto
213    
214            * R/SparseM-conv.R: more conversion, notably for triplet matrices.
215    
216            * src/dgCMatrix.c (R_to_C_Matrix): port Doug's fix and
217            * R/Rsparse.R: reactivate .Call()s
218    
219            * tests/Class+Meth.R: a bit more on actual classes
220    
221    2007-02-04  Douglas Bates  <bates@stat.wisc.edu>
222    
223            * src/dgCMatrix.c (compressed_to_TMatrix): fix memory bug using strdup()
224    
225    2007-02-03  Martin Maechler  <maechler@stat.math.ethz.ch>
226    
227            * DESCRIPTION (Version): 0.9975-10 to upload
228    
229            * tests/Class+Meth.R (tstMatrixClass): require coercions to
230            specific classes less unconditionally.
231    
232            * R/Auxiliaries.R: get rid of as_Tsparse() and as_Rsparse()
233    
234            * R/Tsparse.R (triu): etc, use as(*, "TsparseMatrix") instead of as_Tsparse()
235    
236            * R/Rsparse.R (.R.2.T): R-level workaround using compressed_to_TMatrix.
237            * R/Rsparse.R (.R.2.C): R-level workaround since C-level
238            R_to_CMatrix segfaults on one platform.
239            Eliminate most coercion method to *specific* classes, and replace
240            with virtual classes coercions.
241    
242    
243    2007-02-01  Martin Maechler <maechler@stat.math.ethz.ch>
244    
245            * src/init.c: export the CHM...._validate() placeholders, since
246            they *are* called.
247    
248            * tests/Class+Meth.R (classCanCoerce): and starting to test
249            all as(<from>, <to>)
250    
251    2007-01-30  Martin Maechler  <maechler@stat.math.ethz.ch>
252    
253            * R/Tsparse.R ([): more care when subsetting triangular Tsparse
254            * tests/indexing.R: tested now
255            * tests/indexing.Rout.save: updated
256    
257            * src/Csparse.c (Csparse_to_dense): use Rkind = -1 for PATTERN to
258            * src/chm_common.c (chm_dense_to_SEXP): return "ngeMatrix" when
259            appropriate.
260    
261            * NAMESPACE: export a trivial
262            * R/Matrix.R: drop() Matrix-method
263    
264            * R/AllClass.R: moved all prototypes to virtual super classes.
265    
266            * R/Rsparse.R: many more coercions to have less exceptions in
267            * tests/Class+Meth.R:
268    
269            * R/Ops.R (Compare): tweak for case with NA
270            * tests/simpl.R: hence another 'FIXME' eliminated
271    
272    2007-01-29  Martin Maechler  <maechler@stat.math.ethz.ch>
273    
274            * R/diagMatrix.R (solve): the obvious methods for diagonalMatrix
275            objects.
276    
277            * tests/Class+Meth.R (tstMatrixClass): now testing diag(), nnzero(),
278              and more of "!", "&", "|", all, any; coercions
279    
280            * R/Rsparse.R: many coercions (which enable quite a few other
281            methods), thanks to enhancements in
282            * src/dgCMatrix.c (R_to_CMatrix): new, and
283            * src/dgCMatrix.c (compressed_to_TMatrix): now for (d,l,n) ,
284            symmetric & triangular and ..RMatrix objects.
285    
286            * src/TMatrix_as.c (Matrix_T_as_DENSE,Matrix_T_as_GENERAL):
287            renamed file from src/dsTMatrix.c;
288            now dealing with symmetric and triangular Tsparse coercions, both
289            to dense and general.
290    
291    2007-01-27  Martin Maechler  <maechler@stat.math.ethz.ch>
292    
293            * src/dsTMatrix.c: has now "l" and "n" methods besides the "d" ones.
294    
295            * R/Ops.R (Arith): <dgCMatrix> o <numeric> now remains sparse
296            where sensible when the <numeric> is of length > 1.
297    
298    2007-01-26  Martin Maechler  <maechler@stat.math.ethz.ch>
299    
300            * R/Matrix.R ([<-): for M[] <- value: fix length
301    
302    2007-01-25  Martin Maechler  <maechler@stat.math.ethz.ch>
303    
304            * R/Auxiliaries.R (n2l_Matrix): new, to be used in
305            * R/ndenseMatrix.R: new coercions n* -> l*
306    
307    2007-01-22  Martin Maechler  <maechler@stat.math.ethz.ch>
308    
309            * R/triangularMatrix.R: new file; simple triu() and tril() methods.
310    
311            * R/Ops.R ("Logic"): and other "Ops", many updates
312    
313    2007-01-18  Martin Maechler  <maechler@stat.math.ethz.ch>
314    
315            * src/Mutils.h (SET_DimNames): new utility
316    
317            * R/Auxiliaries.R (nnzero): improved and now exported via
318    
319            * NAMESPACE: + nnzero(); length() == prod(dim(.)) method for all "Matrix" objects
320    
321    2007-01-17  Martin Maechler  <maechler@stat.math.ethz.ch>
322    
323            * R/diagMatrix.R (!): fix typo.
324    
325    2007-01-16  Martin Maechler  <maechler@stat.math.ethz.ch>
326    
327            * R/Auxiliaries.R (as_Csparse): and quite a few others:
328                    allow to pass class definition --> speedup
329            * R/sparseMatrix.R: apply the above
330    
331            * R/Csparse.R: coercion Csparse* to dense* now preserves shape properties.
332    
333            * src/Mutils.h (mMatrix_as_geMatrix): new, based on
334            * src/Mutils.c (dup_mMatrix_as_geMatrix): new; generalization of
335            old dup_mMatrix_as_dgeMatrix), eliminating a long-standing "FIXME".
336    
337            * src/dense.c (dense_to_Csparse): use new mMatrix_as_geMatrix()
338    
339            * R/denseMatrix.R (.dense2C): based on dense_to_Csparse: name it,
340            and use it for "sparse*" as well, since it's faster than the
341            as_Csparse(.) way.
342    
343    2007-01-15  Martin Maechler  <maechler@stat.math.ethz.ch>
344    
345            * R/Ops.R ("Logic"): more methods, notably an  <lgC> o <lgC> one.
346    
347    2007-01-12  Martin Maechler  <maechler@stat.math.ethz.ch>
348    
349            * R/Tsparse.R (.TM.repl.i.2col): new internal function to be used
350            as method for   M[ ij ] <- v
351            * R/Csparse.R:: go via Tsparse for "M[ij] <- v"
352    
353            * R/Ops.R: "Compare" for (C|R)sparse: need pointer slot for all
354            FALSE answer
355    
356            * R/Csparse.R (replCmat): fix the "all non-zero" case with reordering
357            * tests/indexing.R: test it, and some of the above
358    
359    2007-01-05  Martin Maechler  <maechler@stat.math.ethz.ch>
360    
361            * R/Auxiliaries.R (is_duplicatedT): new utility
362    
363    2007-01-05  Douglas Bates  <bates@stat.wisc.edu>
364    
365            * src/init.c (R_init_Matrix): export cholmod_scale
366    
367    2006-12-30  Martin Maechler  <maechler@stat.math.ethz.ch>
368    
369            * R/zzz.R (tmp): for R >= 2.5.0, extend formals of our
370            base::as.matrix to (x, ...)
371    
372    2006-12-28  Martin Maechler  <maechler@stat.math.ethz.ch>
373    
374            * R/Ops.R ("Arith" etc): move almost all "Ops" methods to new R
375            file; start using "Logic", hence
376    
377            * DESCRIPTION (Depends): R >= 2.4.1 (since we want "Logic")
378            * NAMESPACE: import and export "Logic"
379    
380    2006-12-27  Martin Maechler  <maechler@stat.math.ethz.ch>
381    
382            * src/zpotfr.f and dependencies: use LAPACK 3.1 version
383            only needed previously to R version 2.5.0.
384    
385    2006-12-26  Martin Maechler  <maechler@stat.math.ethz.ch>
386    
387            * DESCRIPTION (Date, Version): 0.9975-8, ready for release
388    
389            * R/Tsparse.R (replTmat): fix subassignment of triangular
390            * R/Csparse.R (replCmat): ditto
391            * tests/indexing.R: more tests, incl the above fix
392    
393    2006-12-23  Martin Maechler  <maechler@stat.math.ethz.ch>
394    
395            * R/Auxiliaries.R (drop0): extend for non CSparse
396            * R/Auxiliaries.R (diagU2N): should work for all sparseMatrix
397    
398            * src/Csparse.c (Csparse_to_Tsparse, Csparse_general_to_symmetric):
399                    use uplo correctly (!); other places: use uplo_P() macro
400    
401            * R/Csparse.R (replCmat): call diagU2N() when needed
402            * R/Tsparse.R (replTmat): ditto
403    
404            * src/dtCMatrix.c (tCMatrix_validate): new
405            * src/dtTMatrix.c (tTMatrix_validate): new, used in
406            * R/AllClass.R: for validity of dtC, dsC, and dtT, dsT.
407    
408            * R/diagMatrix.R (replDiag): to use in [<-
409    
410    2006-12-22  Martin Maechler  <maechler@stat.math.ethz.ch>
411    
412            * R/Auxiliaries.R (as_Csparse2, as_geSimpl): new functions;
413                    also more general diagU2N().
414    
415    2006-12-21  Martin Maechler  <maechler@stat.math.ethz.ch>
416    
417            * R/bind2.R: new file for all cbind2(), rbind() methods moved here
418            from R/<foo>Matrix.R files. Better diagonal & improved sparse methods.
419    
420    2006-12-20  Martin Maechler  <maechler@stat.math.ethz.ch>
421    
422            * tests/bind.R: a few more cases
423            * R/Auxiliaries.R (.M.kind): also work for atomic vectors
424    
425            * R/denseMatrix.R (cbind2/rbind2): moved here (and generalized) from
426            * R/ddenseMatrix.R (cbind2/rbind2)
427            * R/Tsparse.R (replTmat): final(?!) fix for "[<-" ..
428            * tests/indexing.R
429            * tests/indexing.Rout.save: updated
430    
431    2006-12-18  Martin Maechler  <maechler@stat.math.ethz.ch>
432    
433            * R/Tsparse.R (replTmat): fixed a remaining "[<-" bug in
434            * tests/indexing.R
435    
436    2006-12-15  Martin Maechler  <maechler@stat.math.ethz.ch>
437    
438            * R/sparseMatrix.R (prSpMatrix): "." alignment much improved:
439            align with proper position of "0", i.e., right for integers.
440            argument 'align' by default is "fancy".
441    
442    2006-12-14  Martin Maechler  <maechler@stat.math.ethz.ch>
443    
444            * R/sparseMatrix.R: delegate "Compare" to "Csparse.."
445            * R/Csparse.R: and fix "Compare" for more cases.
446            * tests/Class+Meth.R: test some of these (m == m, m != m)
447    
448    2006-12-13  Martin Maechler  <maechler@stat.math.ethz.ch>
449    
450            * R/lsparseMatrix.R: all() and any() methods
451            * R/ldenseMatrix.R:      ditto
452            * NAMESPACE, R/Matrix.R: ditto
453    
454            * man/all-methods.Rd: document them minimally
455    
456            * tests/simple.R: add a few examples for these
457    
458    2006-12-11  Martin Maechler  <maechler@stat.math.ethz.ch>
459    
460            * R/Tsparse.R ([): fix long standing typo in symmetric case
461            * man/dsCMatrix-class.Rd: add example exhibiting the above case
462    
463    2006-12-10  Douglas Bates  <bates@stat.wisc.edu>
464    
465            * src/CHMfactor.c (CHMfactor_to_sparse): change LDL factorization
466            to LL before converting to a sparse matrix. (The LDL form can be
467            converted to a sparse matrix but it is implicitly a unit
468            triangular matrix and a diagonal matrix overwritten on the diagonal.)
469    
470    2006-12-09  Douglas Bates  <bates@stat.wisc.edu>
471    
472            * src/chm_common.c (chm_factor_to_SEXP): allocate and fill the Dim slot.
473    
474    2006-12-08  Douglas Bates  <bates@stat.wisc.edu>
475    
476            * DESCRIPTION (Version): updated -> release 0.9975-7
477            * src/{init.c,chm_common.c}, inst/include/*: export cholmod_analyze_p
478    
479    2006-11-30  Martin Maechler  <maechler@stat.math.ethz.ch>
480    
481            * R/diagMatrix.R (%*%): write a direct [diag o Csparse] method
482    
483    2006-11-29  Douglas Bates  <bates@stat.wisc.edu>
484    
485            * src/dgeMatrix.c (dgeMatrix_solve): Check error code from dgetri.
486            * tests/dg_Matrix.R: Add Barry Rowlingson's test of a matrix that
487            is exactly singular.
488    
489    2006-11-07  Martin Maechler  <maechler@stat.math.ethz.ch>
490    
491            * DESCRIPTION (Date): updated -> release 0.9975-6
492    
493    2006-11-06  Martin Maechler  <maechler@stat.math.ethz.ch>
494    
495            * R/Csparse.R (replCmat): symmetric indexing of symmetric matrix
496            now returns symmetric.
497    
498            * R/zzz.R ("diag<-"): replace "diag<-" in base for R <= 2.4.x
499    
500            * R/Matrix.R (.M.sub.i.2col):  new, for  M[ cbind(i,j) ] indexing.
501            * R/Matrix.R (.M.repl.i.2col): new, for  M[ cbind(i,j) ] <- value
502    
503            * R/Auxiliaries.R (.type.kind): added
504    
505    2006-11-04  Martin Maechler  <maechler@stat.math.ethz.ch>
506    
507            * src/cs.[ch]: updated to CSparse Version 2.0.3 by simply
508            running src/CSparse_install.sh
509    
510            * R/denseMatrix.R: "[": keep symmetric on symmetric indexing.
511    
512    2006-11-03  Martin Maechler  <maechler@stat.math.ethz.ch>
513    
514            * src/dsCMatrix.c (dsCMatrix_Csparse_solve): new
515            * R/dsCMatrix.R (solve): "fully-sparse" using the above.
516    
517            * R/AllClass.R: "pMatrix" now also inherits from "generalMatrix"
518    
519            * tests/Class+Meth.R (tstMatrixClass): now assure
520            the (important in method programming) property :
521    
522                    ###>>  Every "Matrix" is either
523                    ###>>  "general*", "symmetric*", "triangular*" or "diagonal*"
524    
525                    (where "*" stands for "Matrix")
526    
527            * R/Auxiliaries.R (diagU2N): now .Call()s Csparse_diagU2N for <Csparse>
528    
529            * R/dMatrix.R (Compare(<dMatrix>,<dMatrix>): update and
530            * tests/validObj.R: checks for "comparison"
531    
532            * R/sparseMatrix.R ([): improved indexing for sparse;
533                    trying to keep <symmetric>[ n, n] symmmetric
534    
535            * tests/indexing.R: indexing for logical sparse now ok
536    
537    
538    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
539    
540            * src/Tsparse.c: use xTsparse_validate() , and hence remove
541    
542            * src/{ltC,lsC,lgT}Matrix.[ch]: removed
543    
544    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
545    
546            * R/AllClass.R (Matrix-class): check length of dimnames in validity.
547    
548            * tests/simple.R: validObject() checking the above.
549    
550            * src/dgCMatrix.c (xCMatrix_validate): new, small and simple,
551            replacing both dgCMatrix_validate and lgCM*.
552    
553            * src/Csparse.c (Csparse_dense_prod, etc): do not lose dimnames;
554            fix dimnames setting in other places.
555            * src/chm_common.c (chm_dense_to_SEXP): now can pass dimnames
556    
557    2006-11-01  Martin Maechler  <maechler@stat.math.ethz.ch>
558    
559            * R/Csparse.R,src/Csparse.c, etc: tcrossprod(<CsparseM>,<CsparseM>)
560    
561            * R/sparseMatrix.R (isSymmetric): drop 'factors' slot for
562            symmetry test, via
563            * R/Auxiliaries.R (.as.dgC.0.factors):
564    
565    2006-11-01  Douglas Bates  <bates@r-project.org>
566    
567            * R/Csparse.R,src/Csparse.c,tests/matprod.R,
568            man/CsparseMatrix-class.Rd: crossprod(<CsparseMatrix>,
569            <CsparseMatrix>) added
570    
571    2006-10-30  Martin Maechler  <maechler@stat.math.ethz.ch>
572    
573            * tests/matprod.R: add a variation of Harri's example
574    
575            * R/dsparseMatrix.R: fix crossprod(<dsparse>, <dge>) to *not*
576            recursive infinitely.
577    
578            * R/dgCMatrix.R: + solve(<sparse>, <sparse>)
579    
580            * tests/indexing.R: add test for the "<" bug fixed 10-27 in R/dMatrix.R
581    
582    2006-10-28  Martin Maechler  <maechler@stat.math.ethz.ch>
583    
584            * tests/Class+Meth.R (tstMatrixClass): more: use non-trivial
585            matrix if possible; test m+m == 2*m; now test dgRMatrix.
586            * R/dgRMatrix.R (.to.dgR): a few more coercions, in order to
587            satisfy the above test.
588    
589    2006-10-27  Martin Maechler  <maechler@stat.math.ethz.ch>
590    
591            * R/Matrix.R (Ops):  <Matrix> o <matrix>  method added
592    
593            * R/dgCMatrix.R: solve(a, b="missing") based on
594            * src/dgCMatrix.c (dgCMatrix_matrix_solve): extend to work with
595            RHS = NULL.
596    
597            * R/diagMatrix.R (diagdiagprod): extend %*% etc to ldiMatrix;
598            add more (needed) [t]crossprod() methods.
599    
600            * man/ddiMatrix-class.Rd: more info, notably on 'diag'
601    
602            * R/Auxiliaries.R (as_CspClass): cleanup
603            (drop0): internal utility for "Csparse_drop(*, 0)"
604            (.bail.out.2): encourage active feedback
605    
606    2006-10-26  Martin Maechler  <maechler@stat.math.ethz.ch>
607    
608            * R/dMatrix.R(Compare): new(), then slots [no validity check]
609    
610            * src/Csparse.c (Csparse_validate): fixed (and more efficient in
611            non-valid or 'sorted' case).
612    
613            * R/dsparseMatrix.R: add "chol" method.
614            * R/ddenseMatrix.R: ditto
615    
616            * R/diagMatrix.R (Ops): group methods for  <diagonal> o <sparse>
617            * NAMESPACE (Ops)
618            * R/diagMatrix.R (diag2T): simple utility used "higher level"
619            coercion; deprecating direct lower level coercions.
620    
621            * R/*.R (seq): use seq_len() and seq_along() where possible.
622    
623    
624    2006-10-23  Martin Maechler  <maechler@stat.math.ethz.ch>
625    
626            * DESCRIPTION (Version): 0.9975-5 ready for release
627    
628    2006-10-20  Douglas Bates  <bates@stat.wisc.edu>
629    
630            * src/init.c (R_init_Matrix): export more cholmod CCallable functions.
631    
632    2006-10-20  Martin Maechler  <maechler@stat.math.ethz.ch>
633    
634            * R/AllClass.R (corMatrix): add 'validity' check;
635                    comment out unused "LDL" class definition
636            * NAMESPACE: mention, but do not export "LDL" class
637            * R/corMatrix.R: new (simple), needed for R-devel with
638            * tests/Class+Meth.R (tstMatrixClass): 1 exception for corMatrix
639              coerce and t() exceptions for all 5 'Mat.MatFact' classes.
640    
641    2006-10-19  Douglas Bates  <bates@stat.wisc.edu>
642    
643            * src/chm_common.h: Add R_cholmod_start to initialize cholmod to
644            use Rprintf and R's error handling.
645    
646    2006-10-17  Martin Maechler  <maechler@stat.math.ethz.ch>
647    
648            * R/diagMatrix.R (%*%): rep(*, each = .) in Matrix %*% diagonal.
649            * tests/matprod.R: add tests for the bug fixed.
650    
651    2006-10-11  Douglas Bates  <bates@stat.wisc.edu>
652    
653            * src/HBMM.[ch]: remove HarwellBoeing format for writing.
654            * src/SOURCES_C.mkf (SOURCES_C): no longer compile iohb.c
655    
656    2006-10-06  Douglas Bates  <bates@stat.wisc.edu>
657    
658            * R/d[gs]CMatrix.R: deprecate the writeHB function.  Use writeMM instead.
659    
660    2006-10-06  Martin Maechler  <maechler@stat.math.ethz.ch>
661    
662            * DESCRIPTION (Version): 0.9975-3
663    
664            * R/diagMatrix.R (bdiag): new function constructing block diagonal
665            (sparse) matrices.
666            * man/bdiag.Rd: docu + examples
667    
668            * R/Csparse.R (replCmat): calling new Csparse_drop() now.
669    
670            * src/Csparse.c (Csparse_general_to_symmetric, Csparse_drop): new functions
671            * R/lsCMatrix.R: three more coercions to lsC (thanks to the above)
672    
673            * R/diagMatrix.R (Diagonal): '[<-' method for diag.matrices such
674            that result is sparse or diagonal (and not dense).
675    
676            * man/Subassign-methods.Rd: fix examples
677    
678            * R/Matrix.R (Matrix):  Matrix(0, *) or Matrix(*, sparse=TRUE)
679            should always return a sparse (and not sometimes a diagonal) matrix.
680    
681    2006-10-05  Martin Maechler  <maechler@stat.math.ethz.ch>
682    
683            * R/Matrix.R ([<-): also for value "Matrix" or "matrix"
684    
685    2006-10-04  Douglas Bates  <bates@stat.wisc.edu>
686    
687            * DESCRIPTION (Version): 0.9975-2
688    
689            * inst/include/Matrix_stubs.c (M_cholmod_sparse_to_triplet): export more symbols
690    
691    2006-10-02  Douglas Bates  <bates@R-project.org>
692    
693            * tests/dg_Matrix.R: Simplify test taking into account new code.
694    
695    2006-09-29  Martin Maechler  <maechler@stat.math.ethz.ch>
696    
697            * R/Csparse.R (replCmat): improve for missing i / j in non-simple cases
698    
699            * R/lsTMatrix.R: new files w/ missing methods
700            * R/nsTMatrix.R:  "  'for completeness'
701    
702            * tests/Class+Meth.R: a bit less 'not.ok.classes'
703    
704            * R/Tsparse.R (t): generalized "t" method from "dgT*" to "Tsparse*"
705    
706    
707    2006-09-28  Douglas Bates  <bates@R-project.org>
708    
709            * src/dppMatrix.h: Ensure definition of dspMatrix_validate is
710            included.
711    
712            * src/init.c, inst/include/{Matrix.h,Matrix_stubs.h,cholmod.h}:
713            Export C-callable functions used in Zt_create in lme4.
714    
715    2006-09-28  Martin Maechler  <maechler@stat.math.ethz.ch>
716    
717            * DESCRIPTION (Version): 0.9975-1
718    
719            * tests/simple.R: less checks fail; using NA, found that our
720                    kronecker() is not base-compatible with NA's.
721    
722            * R/dMatrix.R: "Compare" method now implemented for all cases
723    
724            * R/Auxiliaries.R (indTri): == which([lower/upper].tri( * )) new utility
725    
726            * man/dtpMatrix-class.Rd: mention length of 'x' slot
727    
728            * src/dtpMatrix.c (dtpMatrix_validate): fix check
729            * src/dspMatrix.c (dspMatrix_validate): ditto
730    
731            * R/dtTMatrix.R (gt2tT): fix ("l" -> "n")
732              including coercion to [nl]tTMatrix.
733    
734            * R/diagMatrix.R (show): print a header line as for other classes.
735    
736    2006-09-27  Martin Maechler  <maechler@stat.math.ethz.ch>
737    
738            * src/Makefile.win (SUBDIRS): fix typo
739    
740    2006-09-19  Martin Maechler  <maechler@stat.math.ethz.ch>
741    
742            * DESCRIPTION (Date): ready to release 0.9975-0 to CRAN
743    
744    2006-09-18  Douglas Bates  <bates@stat.wisc.edu>
745    
746            * R/[CT]sparse.R (crossprod and tcrossprod): Handle the cases for x
747            symmetric and y missing in R code using %*% (cholmod_aat doesn't
748            accept a symmetric matrix).
749            * tests/group-methods.R: Uncomment test of crossprod applied to
750            lsCMatrix objects.
751    
752    2006-09-18  Martin Maechler  <maechler@stat.math.ethz.ch>
753    
754            * R/AllClass.R (symmetricMatrix): add validity method (available
755            in C for a long time). Many "n..Matrix": drop (wrong) validity arg.
756    
757            * src/lgCMatrix.c (lgCMatrix_validate): check 'x' slot (!)
758    
759            * tests/indexing.Rout.save:
760            * tests/indexing.R: additions, mainly for 'lsparse'
761    
762            * R/diagMatrix.R (Diagonal) & coercion to lgTMatrix: fixes for NA
763            case.
764    
765            * R/Auxiliaries.R (nz.NA): new utility now used in nnzero()
766    
767    2006-09-16  Martin Maechler  <maechler@stat.math.ethz.ch>
768    
769            * R/sparseMatrix.R (prSpMatrix): print logical NAs "visibly"
770                    as 'N' (1-letter - Ok?)
771    
772            * tests/group-methods.R: add test for logical + NAs
773    
774            * R/dMatrix.R ("Compare"): fix to work with NA's
775    
776            * R/AllClass.R: "Cholesky" etc now inherit from MatrixFactorization.
777    
778            * src/lgCMatrix.c (ncsc_to_matrix): renamed from lcsc_to_matrix()
779                    which is implemented.
780    
781    2006-09-15  Martin Maechler  <maechler@stat.math.ethz.ch>
782    
783            * src/chm_common.c: coerce logical <-> double instead of
784            typecasting;  needed for "l" matrix handling in cholmod.
785    
786            * tests/other-pkgs.R (graph): small extension in "graph" checks.
787    
788            * R/sparseMatrix.R (graphNEL -> Tsparse): method for weight case.
789            (Tsp2grNEL): other fixes needed
790    
791    2006-09-11  Martin Maechler  <maechler@stat.math.ethz.ch>
792    
793            * R/AllClass.R ("nMatrix"): and subclasses for "nonzero pattern"
794                    Matrices, since "lMatrix", also "lsparseM" can have NA
795            * R/ndenseMatrix.R, etc: new source files
796            * man/nsparseMatrix-classes.Rd, etc: new help files
797            * tests/: adaptions
798            * src/chm_common.c (chm_dense_to_SEXP): and others:
799                    new 'Rkind' argument: "l*" and "d*" both use CHOLMOD_REAL
800            * src/Csparse.c, etc: ditto
801    
802    2006-09-11  Douglas Bates  <bates@R-project.org>
803    
804            * src/Mutils.[ch],init.c inst/include/*.h: Move the
805            alloc_d**Matrix functions to the lme4 package.
806    
807    2006-09-09  Douglas Bates  <bates@R-project.org>
808    
809            * src/dsCMatrix.c (dsCMatrix_Cholesky): igoring LDL = FALSE now
810            fixed
811    
812    2006-09-09  Martin Maechler  <maechler@stat.math.ethz.ch>
813    
814            * R/lMatrix.R: new
815    
816            * R/sparseMatrix.R (Tsp2grNEL): do not yet use graph::foo()
817    
818            * R/dgeMatrix.R: do not define tcrossprod() methods for "matrix"
819            * man/tcrossprod.Rd: ditto
820    
821    2006-09-08  Douglas Bates  <bates@stat.wisc.edu>
822    
823            * inst/include/Matrix_stubs.c,Matrix.h: Add declarations and stubs
824            for exported functions
825            * src/Makefile, src/CHOLMOD/Lib/Makefile, src/Metis,CAMD,CCOLAMD:
826            Remove partitioning algorithms for sparse matrix reordering.  The
827            copyright on the Metis code was problematic and the methods were
828            rarely used.
829            * src/triplet_to_col.[ch],MMHB.[ch]: Remove triplet_to_col.  Such
830            operations are now done entirely in CHOLMOD code.
831    
832    2006-09-06  Douglas Bates  <bates@R-project.org>
833    
834            * src/Mutils.h: Remove functions that are no longer used.
835    
836    2006-09-04  Douglas Bates  <bates@R-project.org>
837    
838            * src/dtCMatrix.c (dtCMatrix_validate): rename functions.
839            * src/DEPS.mkf: update
840    
841    2006-09-02  Martin Maechler  <maechler@stat.math.ethz.ch>
842    
843            * created branches/Matrix-for-R-2.3.x;  on trunk: do
844            * DESCRIPTION (Version): 0.9975-0
845            (Depends): R (>= 2.4.0)
846    
847    2006-09-01  Douglas Bates  <bates@R-project.org>
848    
849            * R/sparseMatrix.R: Added direct method to CsparseMatrix from graphNEL
850    
851    2006-09-01  Martin Maechler  <maechler@stat.math.ethz.ch>
852    
853            * R/sparseMatrix.R: add coercion from "ANY" to "sparseMatrix"
854            * R/denseMatrix.R:  add coercion from "ANY" to "denseMatrix"
855    
856            * R/Matrix.R ([): use nargs() to disambiguate M[i] and M[i,]
857    
858    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
859    
860            * R/sparseMatrix.R (Arith): moved Arith group method one-level up
861            from "dsparse" to "sparse" and now go via "Csparse" instead of "dgC"
862            * R/dsparseMatrix.R: ditto
863            * R/Csparse.R: ditto
864    
865    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
866    
867            * R/dMatrix.R (Compare): improve availability of "<", etc
868            * R/Auxiliaries.R (asTuniq): new; also make use of R 2.4.x print(*,max)
869    
870    2006-08-30  Martin Maechler  <maechler@stat.math.ethz.ch>
871    
872            * R/dgCMatrix.R: aargh: "Arith(<dgC>, numeric)" was wrong because
873            of a 0-index which was used as 1-index (..hmm)
874    
875            * R/sparseMatrix.R (prSpMatrix): fix printing an all-0 sparse Matrix
876    
877            * R/Auxiliaries.R (all0, is0): for 0-testing in presence of NA's
878            * R/Auxiliaries.R (isTriMat): use all0() for 0-testing.
879            (.is.diagonal): ditto
880    
881            * R/lgTMatrix.R: as("matrix", "lgTMatrix"): warn about NA's
882    
883            * R/Matrix.R (Matrix): also work for NA data
884    
885    2006-08-28  Martin Maechler  <maechler@stat.math.ethz.ch>
886    
887            * R/Matrix.R (Matrix): + 'forceCheck' argument; dimnames setting
888            in all cases.
889    
890    2006-08-27  Douglas Bates  <bates@R-project.org>
891    
892            * src/dense.[ch],init.c, R/ddenseMatrix.R, man/band.Rd
893            (ddense_band): Added triu, tril and band for ddenseMatrix objects.
894    
895    2006-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>
896    
897            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): added all subclasses of
898            subclasses of "ddenseMatrix"
899            * src/init.c et al: outcomment dtrM*_as_dge* and dsyM*_as_dge*_
900            * R/ddenseMatrix.R et al: setAs("ddenseMatrix", "dgeMatrix", ..)
901            instead of half dozen specialized ones.
902    
903    2006-08-25  Douglas Bates  <bates@R-project.org>
904    
905            * R/lmer.R (qqmath method): Bug fix provided by Emmanuel Tillard
906            <tillard@cirad.fr> - ordering standard errors to match effects.
907    
908    2006-08-24  Douglas Bates  <bates@R-project.org>
909    
910            * src/lsCMatrix.c (lsCMatrix_trans): Remove lsCMatrix_chol based
911            on R_ldl.
912            * R/lCholCMatrix.R,
913            src/[dl]CholCMatrix.[ch],R_ldl.[ch],Metis_utils.[ch]: removed
914            * src/dsCMatrix.c (dsCMatrix_to_dgTMatrix): use CHOLMOD
915            * many files in ./R and ./src: Use more general version of
916            dup_mMatrix_as_dgeMatrix to simplify method definitions.
917            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): Add ddiMatrix,
918            dtpMatrix, dspMatrix and dppMatrix conversions.
919    
920    
921    2006-08-23  Douglas Bates  <bates@R-project.org>
922    
923            * R/AllClass.R,lCholCMatrix.R,src/SOURCES_C.mkf,init.c,NAMESPACE:
924            Remove classes lCholCMatrix and dCholCMatrix based on R_ldl code.
925            * src/dgeMatrix.c: Ensure 'factors' slot exists in result of
926            dgeMatrix_crossprod (may need to do this in other places).
927            * R/AllGeneric.R,dsCMatrix.R, src/dscMatrix.[ch]: Add Cholesky
928            generic and method for dsCMatrix.  Use CHOLMOD for chol().
929    
930    2006-08-22  Douglas Bates  <bates@R-project.org>
931    
932            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): updated for general
933            types of classed Matrices, matrices or numeric or logical vectors.
934            * src/init.c: register dup_mMatrix_as_dgeMatrix for coercions.
935            * src/chm_common.c,Mutils.h (as_cholmod_factor): Move check_class
936            to Mutils.h (as an inline) and change name to Matrix_check_class;
937            fixes in as_cholmod_factor and chm_factor_to_SEXP.
938            * src/dsCMatrix.[ch]: Use CHOLMOD for dsCMatrix_chol and
939            dsCMatrix_matrix_solve.  Comment out vestigial functions.
940            * src/Csparse.c: use diag_P and uplo_P macros.
941    
942    2006-08-21  Douglas Bates  <bates@R-project.org>
943    
944            * src/lmer.c (internal_mer_RZXinv): Fix memory leak caught by
945            valgrind.
946            * tests/matprod.R: Add tests to verify that 'solve' and '%*%' are
947            inverses.
948            * src/sparseQR.c (sparseQR_validate): add new validation test, fix
949            -Wall warnings.
950            * src/dppMatrix.c,dtrMatrix.c,dgCMatrix.c,dgeMatrix.c,dspMatrix.c:
951            Use dup_mMatrix_as_dgeMatrix.
952    
953    2006-08-20  Douglas Bates  <bates@R-project.org>
954    
955            * src/sparseQR.c: Fix thinko in sparseQR_resid_fitted.
956            * tests/sparseQR.R: Added
957            * man/sparseQR-class.Rd: Document methods for qr.* generics
958            * R/sparseQR.R: Return correct # of coefs; fix cut-and-paste errors
959    
960    2006-08-19  Douglas Bates  <bates@R-project.org>
961    
962            * NAMESPACE, R/sparseQR.R, src/init.c,sparseQR.[ch],SOURCES_C.mkf:
963            Added methods for sparseQR for qr.qy, qr.qty, qr.coef, qr.resid
964            and qr.fitted.
965            * src/Mutils.[ch]: Added dup_mMatrix_as_dgeMatrix utility
966            * src/dgCMatrix.c: Check for ordering before storing q in dgCMatrix_QR
967    
968    2006-08-18  Martin Maechler  <maechler@stat.math.ethz.ch>
969    
970            * R/AllGeneric.R: add "qr" and "chol" generics; via 'trick' since
971            the base version has no "..." argument.
972    
973            * R/sparseMatrix.R (prSpMatrix): fix the triangular unit diagonal case.
974    
975            * R/Matrix.R: define and
976            * NAMESPACE: export as.numeric() and as.logical() methods.
977                    Let's hope these do not badly slow down something...
978            Finally export the zapsmall() method.
979    
980    2006-08-17  Douglas Bates  <bates@R-project.org>
981    
982            * src/dgCMatrix.[ch] (dgCMatrix_matrix_solve), src/init.c,
983            R/dgCMatrix.R: solve methods for dgCMatrix and dense RHS.
984            * src/dtCMatrix.c :Remove code that is no longer used
985            * R/dtCMatrix.R: Use C code for diagU2N in CsparseMatrix classes
986    
987    2006-08-14  Douglas Bates  <bates@R-project.org>
988    
989            * src/Csparse.[ch],init.c (Csparse_to_logical): Added utilities
990            Csparse_to_logical and Csparse_symmetric_to_general.
991            * R/dgCMatrix.R,dsCMatrix.R,Csparse.R : Consolidate general
992            coercion methods between CsparseMatrix and TsparseMatrix.
993    
994    2006-08-14  Douglas Bates  <bates@R-project.org>
995    
996            * R/dtCMatrix.R,dgCMatrix.R,Csparse.R src/init.c,dgCMatrix.[ch],
997            Csparse.[ch],chm_common.c,dense.c : Use CHOLMOD code and methods
998            for CsparseMatrix, TsparseMatrix, denseMatrix or matrix when
999            possible.
1000    
1001    2006-08-12  Douglas Bates  <bates@R-project.org>
1002    
1003            * src/chm_common.[ch],Csparse.[ch],Tsparse.[ch],CHMfactor.c,dtTMatrix.c,
1004              dgTMatrix.c,dgCMatrix.c,dsCMatrix.c,dtTMatrix.c, R/dsTMatrix.R,
1005              Tsparse.R,Csparse.R,dgTMatrix.R,dsCMatrix.R,lsCMatrix.R:
1006              generalize conversions between TsparseMatrix, CsparseMatrix,
1007              denseMatrix and matrix.  Preserve triangularity property and
1008              propagate Dimnames in the easy cases.
1009    
1010    2006-08-10  Douglas Bates  <bates@R-project.org>
1011    
1012            * src/lmer.c: adjust checks in glmer_init for S4SXP
1013            * tests/validObj.R: check of all(eq) should be all(eq@x) - worked
1014            before S4SXP but for the wrong reasons.
1015    
1016    2006-08-08  Douglas Bates  <bates@R-project.org>
1017    
1018            * src/Csparse.c (Csparse_crossprod): tcrossprod result has stype = -1.
1019            Later modified to return the upper triangle only.
1020            * R/dgTMatrix.R: Remove vestigial crossprod and tcrossprod methods.
1021    
1022    2006-08-07  Douglas Bates  <bates@R-project.org>
1023    
1024            * src/Csparse.c (Csparse_crossprod): Set stype on result to avoid
1025            R-level conversion to a sparse symmetric class.
1026            * R/Tsparse.R,R/Csparse.R (crossprod and tcrossprod methods):
1027            Remove conversion to sparse symmetric classes (now done in C code).
1028    
1029    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
1030    
1031            * R/dgCMatrix.R: disable old crossprod and tcrossprod methods
1032            * man/band.Rd:  adapt the \dontshow{} unit test.
1033    
1034    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
1035    
1036            * DESCRIPTION (Version): 0.995-14  for CRAN
1037    
1038            * tests/other-pkgs.R: oops: library(Matrix) outside *if* !
1039    
1040            * R/sparseMatrix.R (Tsp2grNEL): fixed Tsparse -> graph coercion
1041            * tests/other-pkgs.R:  more checks, sparseMatrix -> graph
1042    
1043            * R/Auxiliaries.R (as_Tsparse, as_Rsparse): new
1044            * R/Tsparse.R (tril, triu, band): methods
1045            * R/dgRMatrix.R (tril, ...):    ditto
1046            * man/band.Rd:                  ditto
1047    
1048    2006-08-04  Martin Maechler  <maechler@stat.math.ethz.ch>
1049    
1050            * R/Matrix.R (head, tail): directly use utils:::head.matrix
1051                    to be up-to-date automatically.
1052    
1053    2006-08-03  Martin Maechler  <maechler@stat.math.ethz.ch>
1054    
1055            * DESCRIPTION (Version): 0.995-13 to be released to CRAN
1056    
1057            * DESCRIPTION (Lazydata): no, instead of 'yes' because it fails for:
1058            * data/CAex.R, inst/external/CAex_slots.rda: replacing data/CAex.rda
1059            * data/KNex.R, inst/external/KNex_slots.rda: replacing data/KNex.rda
1060            such that the S4 objects are always created by the current version
1061            of R and 'Matrix' class definitions.
1062    
1063    2006-08-01  Douglas Bates  <bates@R-project.org>
1064    
1065            * R/lmer.R (LMEoptimize method), tests/lmer.R,
1066            inst/external/test3comp.rda: Added warnings for convergence on
1067            boundary and test cases.
1068    
1069            * src/lmer.c (mer_postVar): Modified to return the variances that
1070            are marginal to the fixed effects, not conditional on them (which
1071            is what the bVar slot contents represent).
1072    
1073    2006-07-31  Douglas Bates  <bates@R-project.org>
1074    
1075            * NAMESPACE, src/lmer.c, R/lmer.R (hatTrace):  Add the hatTrace
1076            function which calls the C function mer_hat_trace2.
1077    
1078            * man/ranef.Rd: Include description of "postVar" argument and
1079            producing a caterpillar plot.
1080    
1081    2006-07-31  Martin Maechler  <maechler@stat.math.ethz.ch>
1082    
1083            * NAMESPACE:    change  "correlation" to "corMatrix"
1084            * R/AllClass.R: to avoid clash with S3 class in 'nlme'.
1085            * R/dpoMatrix.R: ditto
1086            * R/lmer.R:      ditto
1087    
1088    2006-07-28  Douglas Bates  <bates@R-project.org>
1089    
1090            * src/lmer.c (internal_mer_RZXinv): Split the calculation of the
1091            RZXinv slot's contents into a separate internal function that can
1092            be used in mer_hat_trace.
1093    
1094    2006-07-22  Martin Maechler  <maechler@stat.math.ethz.ch>
1095    
1096            * R/Matrix.R: Coercions "Matrix" -> (sparse|dense)Matrix
1097            via new smart
1098            * R/Auxiliaries.R (as_Csparse, as_dense, .M.shapse): new
1099            utility functions.
1100    
1101    
1102    2006-07-21  Martin Maechler  <maechler@stat.math.ethz.ch>
1103    
1104            * R/Csparse.R (tril, triu, band): do return *triangular* classed
1105            matrices when appropriate; band() even symmetric ones.
1106            (replCmat): extend to potentially all "CsparseMatrix"
1107            * R/Tsparse.R (replTmat): extend to all "TsparseMatrix"; hence
1108            allow subassignment for special sparse matrices.
1109    
1110            * R/Auxiliaries.R (as_geClass): factor out the  .M.kind() functionality
1111    
1112            * src/lmer.c (mer_MCMCsamp, glmer_MCMCsamp): new 'verbose'
1113            argument; in glmer_*(): print only if(verbose).
1114    
1115            speed-optimize a few places by moving REAL(.) out of loops.
1116    
1117            * src/lmer.h, src/init.h, R/lmer.R:  related to above.
1118    
1119    2006-07-20  Martin Maechler  <maechler@stat.math.ethz.ch>
1120    
1121            * R/Matrix.R("["): disable ("Matrix", i = "logical", j = "missing"),
1122                    since that wrongly triggers also for M[ logi , ]
1123    
1124            * R/denseMatrix.R: "[" methods now also work e.g. when indexing
1125            a symmetric matrix that results in a non-symmetric one.
1126            * R/Auxiliaries.R (as_geClass): new function used in "[" above.
1127    
1128            * R/dMatrix.R: make round(M) work as round(M, 0)
1129    
1130            * R/dgTMatrix.R (image): coordinate system and axis now use
1131            1-based indices, not 0-based ones.
1132    
1133            * R/Tsparse.R (.ind.prep for "["): get rid of max(<empty>) warning.
1134            * tests/indexing.R: test it.
1135    
1136            * NAMESPACE: export isSymmetric(); has been a generic in "base" for a while;
1137            * man/isSymmetric-methods.Rd: and document it.
1138    
1139            * R/SparseM-conv.R: added coercion methods for some 'SparseM' matrices.
1140            * man/SparseM-conv.Rd: docu them
1141    
1142            * tests/other-pkgs.R: renamed from tests/graph.R and add example
1143                    for 'SparseM' conversions
1144    
1145    2006-07-17  Douglas Bates  <Douglas.Bates@R-project.org>
1146    
1147            * R/Matrix.R (head): added head() and tail() methods.
1148    
1149    2006-07-17  Martin Maechler  <maechler@stat.math.ethz.ch>
1150    
1151            * DESCRIPTION (Version): 0.995-12 released to CRAN
1152    
1153    2006-07-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1154    
1155            * tests/simple.R: add check for correct dsT -> dgT coercion;
1156                    add check for correct printing of symmetric sparse matrices.
1157    
1158            * R/Auxiliaries.R (non0ind): return *all* non-0 entry indices also
1159            for sparse symmetric matrices.
1160    
1161            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): do not copy the
1162            diagonal twice.
1163    
1164    2006-07-11  Douglas Bates  <Douglas.Bates@R-project.org>
1165    
1166            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): Fix a case of INTEGER
1167            being applied to the x slot (detected by Brian Ripley).
1168    
1169    2006-07-10  Martin Maechler  <maechler@stat.math.ethz.ch>
1170    
1171            * src/dgCMatrix.c (dgCMatrix_validate): 'p' slot must have correct length.
1172    
1173            * R/Auxiliaries.R (isTriC): fix buglet (we were 1-based!)
1174    
1175    2006-07-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1176    
1177            * src/lgCMatrix.c (lgCMatrix_diag): new function
1178            * R/lgCMatrix.R (diag): for new method
1179    
1180            * R/AllClass.R (TsparseMatrix): do use Tsparse_validate
1181                 ==> construction of illegal "*gTMatrix" via new() should
1182                 now be much less easy:
1183            * tests/Class+Meth.R: assertError() for some illegal "dgT*"
1184    
1185            * R/Matrix.R (Matrix): Matrix(0, nrow,ncol) now "goes sparse"
1186                    directly.
1187            * man/Matrix.Rd: documents it.
1188    
1189    2006-07-06  Douglas Bates  <bates@R-project.org>
1190    
1191            * src/pedigree.c (pedigree_inbreeding): Correction in
1192            initialization.  This function is not currently being used and is
1193            not fully tested.
1194    
1195            * NAMESPACE, R/{AllClass.R,lmer.R}, src/{init.c,lmer.c}:
1196            Introduced the glmer class.  Added code for mcmcmsamp on glmer
1197            objects.  Modified validity check on pedigree objects to account
1198            for nonparallel patterns of missingness of parents.
1199    
1200            * man/{lmer-class.Rd,mcmcsamp.Rd}: Update documentation for glmer
1201            class.
1202    
1203    2006-07-01  Martin Maechler  <maechler@stat.math.ethz.ch>
1204    
1205            * R/pMatrix.R: coercion pMatrix -> Tsparse
1206    
1207    2006-06-12  Douglas Bates  <bates@R-project.org>
1208    
1209            * DESCRIPTION (Version): 0.995-11 released to CRAN
1210    
1211            * R/lmer.R (mcmcsamp method): Corrected arrangments of names on
1212            the output from mcmcsamp.
1213    
1214    2006-06-10  Douglas Bates  <bates@R-project.org>
1215    
1216            * R/lmer.R (simulestimate): added C code for calculating the trace
1217            of the hat matrix.
1218    
1219    2006-06-09  Martin Maechler  <maechler@stat.math.ethz.ch>
1220    
1221            * R/diagMatrix.R (setAs): define coercion methods to sparse matrix
1222            classes.
1223            * R/sparseMatrix.R etc: multiplication of diagonal and sparse
1224    
1225    2006-06-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1226    
1227            * R/dgTMatrix.R (colSums): etc. All four of
1228            colSums(), rowSums(), colMeans(), rowMeans() now should work for
1229            all "Matrices".
1230    
1231    2006-06-01  Douglas Bates  <bates@stat.wisc.edu>
1232    
1233            * R/lmer.R (panel.ci): Add a reference line at zero and a
1234            background grid to the qqmath plot of ranef.lmer.
1235    
1236    2006-05-30  Douglas Bates  <bates@stat.wisc.edu>
1237    
1238            * R/lmer.R (expandSlash): Functions (non-exported) to allow nested
1239            grouping factors to be specified in the formula as (1|foo/bar).
1240    
1241    2006-05-27  Douglas Bates  <bates@stat.wisc.edu>
1242    
1243            * R/lmer.R (findbars and others): Change check of is.numeric to
1244            !is.language to resolve the bug reported by Jacob Wegelin.
1245    
1246            * src/pedigree.c (pedigree_inbreeding): Initial implementation of
1247            code to evaluate inbreeding coefficients without calculating T,
1248            based on code in Sargolzaei and Iwaisaki's paper.
1249    
1250    2006-05-27  Douglas Bates  <bates@stat.wisc.edu>
1251    
1252            * R/{lmer.R,AllGeneric.R}, src/{init.c,lmer.[ch]}: Added local
1253            generic and mer methods for isNested and denomDF. This denomDF was
1254            an attempt to emulate that in lme but I don't think that makes
1255            sense.  Use the trace of the hat matrix instead.
1256    
1257    2006-05-17  Martin Maechler  <maechler@stat.math.ethz.ch>
1258    
1259            * R/sparseMatrix.R: Matrix <-> graph methods: can no longer use
1260            the C code depending on a slot structure that's no longer valid.
1261            * src/dgTMatrix.c: ditto (also: src/init.c src/dgTMatrix.h)
1262    
1263    
1264    2006-05-17  Douglas Bates  <bates@stat.wisc.edu>
1265    
1266            *  R/{AllGeneric.R,Csparse.R},man/band.Rd,NAMESPACE: changed name
1267            of lowerTriMatrix generic and methods to tril (also upper to triu)
1268            and added a general band extractor.
1269    
1270    2006-05-16  Douglas Bates  <bates@stat.wisc.edu>
1271    
1272            * R/pedigree.R (pedigree): Replace sire and dam values outside the
1273            allowable range with NAs. Added a corresponding check in the
1274            validity check for the pedigree class.
1275    
1276            * R/[CT]sparse.R ([t]crossprod): The result of single-argument
1277            crossprod methods now inherits from symmetricMatrix.
1278    
1279    2006-05-15  Douglas Bates  <bates@stat.wisc.edu>
1280    
1281            * R/AllGeneric.R (lowerTriMatrix): Added (but did not export)
1282            generics lowerTriMatrix and upperTriMatrix along with methods for
1283            the Csparse virtual class.  Also added a C function Csparse_band
1284            that implements these methods by calling cholmod_band.
1285    
1286    2006-05-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1287    
1288            * R/Tsparse.R ("["): column or row subsetting; @Dimnames[k] got
1289            erased when it was NULL.  This led to invalid subselections!
1290    
1291    2006-04-25  Douglas Bates  <bates@stat.wisc.edu>
1292    
1293            * R/dtCMatrix.R: avoid coercion of dtCMatrix object to dgCMatrix
1294            in method for "t" so as not to lose the unit diagonal property.
1295    
1296    2006-04-19  Douglas Bates  <bates@stat.wisc.edu>
1297    
1298            * R/lmer.R, R/AllGeneric.R, NAMESPACE: Remove the postVar generic
1299            and methods.  This is now an option to the ranef method for the
1300            mer class.
1301    
1302            * src/cs_utils.c: Ensure that the nz component is -1 for a
1303            compressed column-oriented matrix.  Minor formatting cleanup.
1304    
1305            * man/lmer-class.Rd: Document the qqmath method for ranef.lmer
1306            objects.
1307    
1308    2006-04-19  Martin Maechler  <maechler@stat.math.ethz.ch>
1309    
1310            * R/Auxiliaries.R (diagU2N): new for the solve() methods in
1311            * R/dtCMatrix.R: where dgC -> dgT coercion now preserves diag = "U".
1312    
1313    2006-04-15  Douglas Bates  <bates@stat.wisc.edu>
1314    
1315            * src/cs.[ch],src/cs_utils.[ch] : Added Tim Davis' CSparse library
1316            in cs.[ch] and utilities to interface to that code in cs_utils.[ch].
1317    
1318            * R/dtCMatrix.R, src/dtCMatrix.[ch] : CSparse-based solve methods
1319            for the dtCMatrix class.
1320    
1321    2006-04-12  Douglas Bates  <bates@stat.wisc.edu>
1322    
1323            * R/pedigree.R, R/AllClass.R, NAMESPACE: added a pedigree class
1324            and methods for it.
1325    
1326    2006-04-12  Martin Maechler  <maechler@stat.math.ethz.ch>
1327    
1328            * R/dgCMatrix.R: add  storage.mode(.) <- "double" for "matrix"
1329            arguments, such that M %*% 1:6 now works
1330            * Tests/matprod.R: test the above
1331    
1332    2006-04-03  Douglas Bates  <bates@stat.wisc.edu>
1333    
1334            * R/lmer.R (qqmath,ranef.lmer-method): added a qqmath method for
1335            the ranef.lmer class.
1336    
1337            * R/AllClass.R, NAMESPACE, R/lmer.R: Added a postVar generic and
1338            methods to extract the posterior variances from the bVar slot.
1339    
1340    2006-03-30  Martin Maechler  <maechler@stat.math.ethz.ch>
1341    
1342            * R/dtCMatrix.R: allow coercion from  dgC* to triangular (dtC*)
1343            * R/dsCMatrix.R: and symmetric (dsC*) 'Csparse' matrices.
1344    
1345            * R/Tsparse.R: Tsparse* -> Csparse* coercion now works and is tested in
1346            * tests/simple: (extended)
1347    
1348            * R/sparseMatrix.R (isTriangular): now using much improved
1349            * R/Auxiliaries.R (isTriC): new triangularity check for *CMatrix
1350    
1351    2006-03-23  Douglas Bates  <bates@stat.wisc.edu>
1352    
1353            * src/dsyMatrix.c (dsyMatrix_as_dspMatrix): Propagate DimNames
1354            (problem report from Franklin Parlamis).  This should be done
1355            generally.
1356    
1357    2006-03-21  Douglas Bates  <bates@stat.wisc.edu>
1358    
1359            * R/AllClass.R,lmer.R: Change the name of the lmer.ranef class to
1360            ranef.lmer (like summary.lmer).  Add the coef.lmer class and
1361            update the plot methods.
1362    
1363    2006-03-20  Douglas Bates  <bates@stat.wisc.edu>
1364    
1365            * R/lmer.R (resid and ranef methods):  Added methods for the
1366            "residuals" and "resid" generic but only for linear mixed model
1367            fits.  Changed the ranef method to return a list of data frames so
1368            that the plot methods now work.
1369    
1370    2006-03-16  Douglas Bates  <bates@bates2>
1371    
1372            * src/dpoMatrix.c (dpoMatrix_chol): Require n > 0 in call to
1373            dpotrf - otherwise the BLAS on Mac OS X complains and quits.
1374    
1375            * DESCRIPTION (Date): New release
1376    
1377    2006-03-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1378    
1379            * DESCRIPTION (Version): 0.995-6  -- to be released to CRAN
1380    
1381            * data/KNex.rda: replacing 'mm' and 'y' by KNex <- list(mm=mm, y=y)
1382            * man/KNex.Rd: and other help files
1383            * tests/*.R: several ones needed adaption
1384            * inst/doc/Comparisons.Rnw: ditto
1385    
1386    2006-03-11  Martin Maechler  <maechler@stat.math.ethz.ch>
1387    
1388            * R/dgCMatrix.R (replCmat): "[<-" methods for dgCMatrix
1389    
1390            * tests/indexing.R: tests for new [<- methods for sparse matrices.
1391    
1392    2006-03-10  Martin Maechler  <maechler@stat.math.ethz.ch>
1393    
1394            * R/dgTMatrix.R (replTmat): "[<-" methods for dgTMatrix
1395    
1396            * R/Tsparse.R (.ind.prep): fix out-of-range indexing
1397    
1398    2006-03-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1399    
1400            * R/dMatrix.R: enable things like  M [ M < 10 ]
1401            * R/dgeMatrix.R: implement it
1402    
1403    2006-03-06  Martin Maechler  <maechler@stat.math.ethz.ch>
1404    
1405            * R/AllClass.R: define "summary.mer" and "*.lmer"
1406            * R/lmer.R (summary): summary(<mer>) computes & returns the above;
1407            * R/lmer.R (show): now works with summary()
1408    
1409    2006-03-04  Martin Maechler  <maechler@stat.math.ethz.ch>
1410    
1411            * R/dgCMatrix.R: finally direct "Arith"  dgC o dgC
1412            * R/Auxiliaries.R (WhichintersectInd): and other utilities to
1413                    support the above
1414    
1415    2006-02-07  Douglas Bates  <bates@stat.wisc.edu>
1416    
1417            * R/lmer.R (lmer): fix initial values of offset and weights for glm.fit.
1418            Use glmFit$prior.weights for weights in a glmm.
1419            Allow an option usePQL = FALSE to skip the PQL steps for the
1420            Laplace method (and, in time, the AGQ method).
1421    
1422            * src/lmer.c (mer_factor): Move downdating and factoring of XtX
1423            into a separate function internal_mer_Xfactor to be able to call
1424            it from internal_bhat.
1425    
1426    2006-01-23  Martin Maechler  <maechler@stat.math.ethz.ch>
1427    
1428            * tests/Class+Meth.R (tstMatrixClass): function for much better
1429            testing; now again of all actual classes.
1430    
1431            * src/Mutils.c (MAKE_TRIANGULAR_BODY, MAKE_SYMMETRIC_BODY):
1432                    use macros and define make_d_matrix_* and make_i_matrix_*
1433                    where _i_ is for the ldense routines:
1434    
1435            * src/ldense.c (ltrMatrix_as_lgeMatrix): provide functions
1436            * src/ldense.c (lsyMatrix_as_lgeMatrix):
1437    
1438            * R/ldenseMatrix.R: use the above in setAs(*,"lgeMatrix")
1439    
1440    
1441    2006-01-16  Martin Maechler  <maechler@stat.math.ethz.ch>
1442    
1443            * R/Matrix.R (Matrix): has become much "smarter" now auto-producing
1444                    many different kinds of matrices.
1445            * R/*.R: quite a few new methods were needed for R CMD check with
1446                    new Matrix().  Very good for users playing around.
1447    
1448    
1449    2006-01-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1450    
1451            * src/dgeMatrix.c (dMatrix_validate): new
1452            * src/Mutils.c (dense_nonpacked_validate): new
1453    
1454            * src/dtrMatrix.c (dtrMatrix_validate): improved/fixed
1455    
1456    
1457    2006-01-14  Douglas Bates  <bates@stat.wisc.edu>
1458    
1459            * R/AllClass.R (compMatrix), (generalMatrix): new virtual classes
1460    
1461    2006-01-07  Douglas Bates  <bates@stat.wisc.edu>
1462    
1463            * DESCRIPTION (Version): 0.99-6 released to CRAN
1464    
1465            * src/dgBCMatrix.c (cscb_trcbsm): Fix due to Peter Dalgaard for
1466            segfault in cases with multiple non-nested grouping factors.
1467    
1468    2006-01-03  Martin Maechler  <maechler@stat.math.ethz.ch>
1469    
1470            * DESCRIPTION (Version): 0.99-4 to be released to CRAN
1471                    (Depends): also on 'utils'
1472    
1473            * R/AllClass.R (diagonalMatrix): new class with "ddi*" and "ldi*"
1474            * R/diagMatrix.R (Diagonal): constructor and methods for
1475            diagonal matrices
1476    
1477            * R/ltTMatrix.R: new "minimal methods"
1478    
1479    2005-12-12  Martin Maechler  <maechler@stat.math.ethz.ch>
1480    
1481            * R/AllGeneric.R (tcrossprod): 2-argument version; here, and for
1482            all methods (and help files).
1483    
1484    2005-12-09  Martin Maechler  <maechler@stat.math.ethz.ch>
1485    
1486            * R/Auxiliaries.R (dimNamesCheck): fixed thinko -> bug
1487                    for case (dimn.  op  no_dimn.)
1488    
1489    2005-11-14  Douglas Bates  <bates@stat.wisc.edu>
1490    
1491            * DESCRIPTION (Version): 0.99-2  released to CRAN
1492    
1493    2005-10-21  Douglas Bates  <bates@stat.wisc.edu>
1494    
1495            * R/lmer.R (simulate method): Fixed a drop=FALSE problem reported
1496            by Julian Faraway.
1497    
1498    2005-10-06  Martin Maechler  <maechler@stat.math.ethz.ch>
1499    
1500            * R/Auxiliaries.R (try_as): new utility
1501            * R/sparseMatrix.R: use try_as() in coercion to original class
1502    
1503    2005-09-30  Martin Maechler  <maechler@stat.math.ethz.ch>
1504    
1505            * src/dgCMatrix.c (double_to_csc): and dgeMatrix_to_csc()
1506    
1507    2005-09-29  Martin Maechler  <maechler@stat.math.ethz.ch>
1508    
1509            * R/Auxiliaries.R (dimNamesCheck): added
1510    
1511            * R/Matrix.R (as.array), (as.vector): new
1512    
1513    2005-09-28  Martin Maechler  <maechler@stat.math.ethz.ch>
1514    
1515            * R/Matrix.R (Matrix): get logical argument 'sparse' with a smart
1516                    default.
1517            * R/AllClass.R: move 'factors' slot toplevel "Matrix";
1518                    "pMatrix" now contains "sparseMatrix"
1519    
1520    2005-09-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1521    
1522            * tests/Class+Meth.R: new tests; t(t(m)) == m
1523    
1524            * src/dtCMatrix.c (tsc_transpose): add forgotten "diag" slot
1525    
1526            * src/dsTMatrix.c (dsTMatrix_as_dsCMatrix): bad typo (segfault!)
1527            * src/dtTMatrix.c (dtTMatrix_as_dtCMatrix): new
1528    
1529            * R/dspMatrix.R: typo in "t" method
1530    
1531    2005-09-18  Douglas Bates  <bates@wisc.edu>
1532    
1533            * R/AllClass.R (TsparseMatrix), CsparseM* and RsparseM*
1534            * R/Tsparse.R: instead of R/gTMatrix.R
1535            * R/Csparse.R: new
1536            * src/Tsparse.c (Tsparse_to_Csparse): new; -> cholmod_()
1537            * src/Tsparse.c: new; many trivial methods calling cholmod_()
1538            * src/Csparse.c (Csparse_to_Tsparse), transpose, (mat|cross)prod:
1539                            via cholmod
1540    
1541    2005-09-16  Martin Maechler  <maechler@stat.math.ethz.ch>
1542    
1543            * R/Auxiliaries.R (non0ind): new function using new C code
1544            * src/dgCMatrix.c (compressed_non_0_ij): new utility
1545    
1546    2005-09-15  Douglas Bates  <bates@localhost.localdomain>
1547    
1548            * src/chm_common.h: header file required by all C sources that
1549            call CHOLMOD functions.  It defines a cholmod_common structure
1550            called 'c' whose address is passed as the last argument to
1551            (virtually) every CHOLMOD function.
1552    
1553            * src/Pattern.c: Simple example of the use of CHOLMOD.
1554    
1555            * src/init.c: initialize and finalize the cholmod_common structure.
1556    
1557            * src/Makefile: Added source packages CHOLMOD UMFPACK AMD COLAMD
1558            LDL and CCOLAMD from the U. of Florida sparse matrix library.
1559    
1560    2005-09-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1561    
1562            * inst/test-tools.R: new file collecting the utility functions used
1563                    in ./tests/*.R
1564    
1565            * R/ddenseMatrix.R (cbind2): new methods for "numeric" and "matrix"
1566            * R/Matrix.R (cbind2): methods for NULL and missing
1567    
1568    2005-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
1569    
1570            * R/AllClass.R: new "index" class for "[" and "[<-":
1571                    First cut at "symmetricMatrix" and "triangularMatrix"
1572            * R/gTMatrix.R (.ind.prep): new function;
1573                    Logical and character indexing now work too.
1574            * R/Matrix.R: cheap "[<-" methods for denseMatrix now work
1575            * tests/indexing.R: new, including *.Rout.save
1576            * tests/dgTMatrix.R: new
1577    
1578    2005-08-29  Douglas Bates  <bates@wisc.edu>
1579    
1580            * src/dgTMatrix.c (graphNEL_as_dgTMatrix): Corrected the position
1581            indicator pos not being updated.  Also enforced upper triangular
1582            for symmetric case.  Need to coerce edges component of elements of
1583            edge list - grr! (Why don't they define their classes cleanly?)
1584    
1585    2005-08-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1586    
1587            * R/Matrix.R:  added first "[<-" methods; not yet functional
1588            * R/denseMatrix.R: ditto
1589            * man/Subassign-methods.Rd: new help file for these
1590    
1591    2005-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>
1592    
1593            * DESCRIPTION (Version): 0.98-6
1594    
1595            * R/denseMatrix.R: new file for "[" fallback methods for all dense
1596            matrices.
1597    
1598    2005-08-19  Martin Maechler  <maechler@stat.math.ethz.ch>
1599    
1600            * src/lgCMatrix.c (lcsc_to_matrix): new; need for
1601                    as( <logical>, "matrix")
1602    
1603            * R/pMatrix.R: coercion to "lgTMatrix"
1604    
1605            * R/gTMatrix.R: new virtual class to define "[" methods for.
1606            * man/gTMatrix-class.Rd:
1607            * General slight re-organization of where "[" methods are defined.
1608              more to come.
1609    
1610    2005-08-18  Douglas Bates  <bates@wisc.edu>
1611    
1612            * DESCRIPTION (Version): 0.98-5  released to CRAN
1613    
1614            * src/dgTMatrix.c (graphNEL_as_dgTMatrix): add first graphNEL methods
1615            * .....
1616    
1617    2005-08-18  Douglas Bates  <bates@localhost.localdomain>
1618    
1619            * R/lmer.R: Corrected naming scheme in mcmcsamp to work with lmer
1620            or glmer objects.
1621    
1622    2005-08-17  Martin Maechler  <maechler@stat.math.ethz.ch>
1623    
1624            * DESCRIPTION (Version): 0.98-4 : upload to CRAN
1625    
1626    2005-08-16  Douglas Bates  <bates@localhost.localdomain>
1627    
1628            * R/HBMM.R: finish re-writing R-only code.
1629    
1630    2005-08-15  Douglas Bates  <bates@localhost.localdomain>
1631    
1632            * man/externalFormats.Rd: move documentation for writeHB and
1633            writeMM here.
1634    
1635            * src/mmio.c: replace inclusion of <malloc.h> by <stdlib.h>
1636            (suggested by Paul Roecker).
1637    
1638            * tests/validObj.R (assertError): Comment out test that is failing
1639            after recent changes in r-devel.
1640    
1641    
1642    2005-08-11  Martin Maechler  <maechler@stat.math.ethz.ch>
1643    
1644            * R/AllClass.R: intermediate virtual class "denseMatrix"
1645            * man/denseMatrix-class.Rd
1646            * NAMESPACE: export it, and also export
1647            * man/unused-classes.Rd: "iMatrix", "zMatrix" and "ldenseMatrix"
1648    
1649    2005-08-10  Douglas Bates  <bates@wisc.edu>
1650    
1651            * DESCRIPTION (Version): 0.98-3 to CRAN
1652    
1653            * src/dtrMatrix.c (dtrMatrix_validate): fixed up validation and
1654            matrix_solve code (which was really, really wrong).
1655    
1656    2005-08-07  Douglas Bates  <bates@wisc.edu>
1657    
1658            * DESCRIPTION (Version): 0.98-2
1659    
1660            * R/HBMM.R (readHB), (readMM): read Matrix Market formats
1661    
1662            * R/lmer.R (abbrvNms): new
1663            * R/lmer.R (mcmcsamp): allow transformed parameters
1664            * src/HBMM.c (Matrix_writeMatrixMarket): Added read/write routines
1665            for the Harwell-Boeing and the MatrixMarket formats.
1666    
1667    2005-08-04  Martin Maechler  <maechler@stat.math.ethz.ch>
1668    
1669            * man/dtrMatrix-class.Rd: add examples
1670            * man/dtpMatrix-class.Rd: ditto; plus note about PROBLEM
1671    
1672            * TODO: note the dtpMatrix (docu) bug
1673    
1674            * R/zzz.R (.onLoad): assignInNamespace("as.matrix", *, "base")
1675            in order to ensure that new as.matrix() is used by old functions,
1676            e.g., svd(), qr(), eigen(), dist(),..;
1677                  apply(), also matplot() or pairs().
1678    
1679    
1680    2005-08-03  Martin Maechler  <maechler@stat.math.ethz.ch>
1681    
1682            * R/lmer.R: add 'fixme' comments and move the linear vs glm check;
1683              add comments about 'control' / lmerControl() arguments
1684    
1685    2005-07-27  Douglas Bates  <bates@wisc.edu>
1686    
1687            * man/sleepstudy.Rd: Added the sleep data set.
1688            * DESCRIPTION (Version): 0.98-1  released to CRAN
1689    
1690    2005-07-12  Douglas Bates  <bates@wisc.edu>
1691            * man/sleepstudy.Rd: Added the sleep data set.
1692    
1693            * R/lmer.R (glmmMCMC): Added PACKAGE = "Matrix" in a couple of
1694            .Call calls that were producing spurious output.
1695    
1696    2005-07-05  Douglas Bates  <bates@wisc.edu>
1697    
1698            * R/lmer.R (lmer): stored updated variance component estimates in
1699            mer object for the generalized model.  (Bug reported by Renaud
1700            Lancelot).
1701    
1702    2005-07-03  Douglas Bates  <bates@wisc.edu>
1703    
1704            * src/lmer.c (glmer_devAGQ): Added AGQ for single grouping factor,
1705            unidimensional case.
1706    
1707    2005-06-08  Douglas Bates  <bates@wisc.edu>
1708    
1709            * DESCRIPTION (Version): 0.96-1
1710    
1711            * moved  lmer-class' R and C code moved from lme4 to here
1712    
1713    2005-06-04  Douglas Bates  <bates@wisc.edu>
1714    
1715            * R/dgCMatrix.R: Call to csc_matrix_mm used undefined arguments
1716            (reported by Guissepe Ragusa <gragusa@ucsd.edu>)
1717    
1718    2005-06-02  Douglas Bates  <bates@wisc.edu>
1719    
1720            * src/Makefile.win: Forgot to update this when Makefile changed.
1721    
1722    2005-05-11  Douglas Bates  <bates@wisc.edu>
1723    
1724            * src/dgCMatrix.c (csc_transpose): Simplified function fixing a
1725            bug reported by Kurt Hornik and Michael Hahsler.
1726    
1727    2005-05-10  Douglas Bates  <bates@wisc.edu>
1728    
1729            * src/lgCMatrix.c (Matrix_lgClgCmm): Implementation of methods for
1730            logical sparse matrices.  These will also be used in the symbolic
1731            analysis for lmer objects.
1732    
1733            * src/dsCMatrix.c (dsCMatrix_matrix_solve): Copied the dimensions
1734            of b to the result.  Fixes bug reported by Jean.Coursol@math.u-psud.fr
1735    
1736    2005-05-06  Douglas Bates  <bates@wisc.edu>
1737    
1738            * src/dgeMatrix.c (dgeMatrix_colsums): Added an implementation of
1739            colMeans, colSums, rowMeans and rowSums.
1740    
1741    2005-04-18  Douglas Bates  <bates@wisc.edu>
1742    
1743            * src/lgCMatrix.[ch]: code for _validate method and stub for
1744            multiplication operation.
1745    
1746            * src/dgeMatrix.c (dgeMatrix_matrix_solve): Passing wrong argument
1747            to dgetrs.
1748    
1749            * src/init.c: Fix cut-and-paste error in definition of
1750            dgeMatrix_matrix_solve
1751    
1752            * src/{many files}: Tighten code by using ALLOC_SLOT.
1753    
1754    2005-04-15  Douglas Bates  <bates@wisc.edu>
1755    
1756            * R/AllClass.R: Add lgTMatrix and lgCMatrix classes
1757    
1758            * DESCRIPTION: Eliminate import of stats.
1759    
1760    
1761    2005-04-06  Douglas Bates  <bates@wisc.edu>
1762    
1763            * R/AllClass.R : add logical sparse matrix classes
1764    
1765    2005-04-01  Martin Maechler  <maechler@stat.math.ethz.ch>
1766    
1767            * R/dgTMatrix.R: add "[" method for triplet matrices
1768            * R/sparseMatrix.R: and other sparse ones; --> add show() for sparse
1769    
1770    2005-03-31  Douglas Bates  <bates@wisc.edu>
1771    
1772            * DESCRIPTION (Version): release 0.95-5 to CRAN
1773    
1774            * R/dMatrix.R: add %*%, crossprod and solve "fallback" methods
1775            * R/sparseMatrix.R: %*%, crossprod()
1776            * R/dgeMatrix.R: more "fallback" methods for numeric/dense matrices
1777            * man/*.Rd: move method definitions to 'Matrix' and 'dMatrix'
1778            * src/lmer.c (lmer_fitted): fix thinko
1779    
1780    2005-03-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1781    
1782            * R/AllClass.R: add two virtual sparse classes ``on top''
1783    
1784    2005-03-24  Martin Maechler  <maechler@stat.math.ethz.ch>
1785    
1786            * R/AllClass.R (setClass): use "VIRTUAL" for the virtual classes;
1787                    correspondingly fix examples and tests/ since new()
1788                    doesn't work for virtual classes.
1789    
1790    2005-03-17  Martin Maechler  <maechler@stat.math.ethz.ch>
1791    
1792            * R/Matrix.R (as.matrix): method and one for unname()
1793            * tests/dpoMatrix.R: tests should now be less platform dependent;
1794              also run for R 2.1.0; using as.matrix()
1795    
1796    2005-03-15  Douglas Bates  <bates@wisc.edu>
1797    
1798            * R/pMatrix.R: "pMatrix" class added
1799            * ....
1800    
1801    2005-03-14  Douglas Bates  <bates@wisc.edu>
1802    
1803            * R/dtpMatrix.R: Add unpack method and an example.
1804    
1805            * src/dsyMatrix.c (dsyMatrix_trf): Add BunchKaufman factorization
1806            of general symmetric matrices and associated S4 methods.
1807    
1808    2005-03-10  Martin Maechler  <maechler@stat.math.ethz.ch>
1809            +
1810    2005-03-05  Martin Maechler  <maechler@stat.math.ethz.ch>
1811    
1812            * R/dgeMatrix.R (setAs): and many other files: more coercion,
1813              crossprod() and "%*%" methods added; tests, too.
1814            * tests/matprod.R: new, for testing these
1815    
1816    2005-03-03  Douglas Bates  <bates@wisc.edu>
1817    
1818            * src/lmer.c (lmer_fitted): Added.
1819    
1820    2005-03-02  Douglas Bates  <bates@wisc.edu>
1821    
1822            * R/dsTMatrix.R: Conversion from dsTMatrix to dsCMatrix
1823    
1824    2005-02-28  Douglas Bates  <bates@wisc.edu>
1825    
1826            * src/*.c,po/,inst/po: Internationalization and localization of
1827            the package.
1828    
1829            * src/ldl.[ch]: Removed these as their contents are referenced in the
1830            R_ldl.c file.
1831    
1832            * src/flame.[ch]: Removed these source files.
1833    
1834            * src/dtrMatrix.c (make_array_triangular): Move to Mutils
1835    
1836            * src/LU.[ch],src/init.c: absorb in factorizations
1837    
1838            * src/Mutils.h: prepare for internationalization
1839    
1840            * src/cblas.h: move the enum definitions to Mutils.h and remove
1841            this file
1842    
1843    2005-02-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1844    
1845            * R/dgeMatrix.R: provide "dimnames" and "dimnames<-" methods
1846    
1847            * R/dtrMatrix.R: fix t() method
1848    
1849            * R/dgeMatrix.R: define group methods "Arith", "Math", "Math2"
1850            * NAMESPACE: export them (and import generics from "methods")
1851            * tests/group-methods.R : and test them.
1852    
1853            * src/dtrMatrix.c (dtrMatrix_as_dgeMatrix): prevent seg.fault in
1854            border case
1855    
1856    2005-02-24  Douglas Bates  <bates@stat.wisc.edu>
1857    
1858            * DESCRIPTION (Version): 0.95-2  released to CRAN
1859    
1860            * src/dgBCMatrix.c:
1861            * src/lmer.c: many changes
1862            * ...
1863    
1864    2005-02-04  Martin Maechler  <maechler@stat.math.ethz.ch>
1865    
1866            * R/Matrix.R: add more sophisticated show() method.
1867    
1868    2005-02-02  Douglas Bates  <bates@stat.wisc.edu>
1869    
1870            * */* : almost complete reorganization of classes.
1871    
1872    2005-01-26  Douglas Bates  <bates@wisc.edu>
1873    
1874            * R/AllGeneric.R: Added matrix exponential generic expm and a method
1875            for the geMatrix class.
1876    
1877    2005-01-24  Douglas Bates  <bates@wisc.edu>
1878    
1879            * src/Makefile (clean): Remove *.a and *.so
1880    
1881            * man/cscBlocked-class.Rd: Remove reference to the lmer-class.
1882    
1883    2005-01-23  Douglas Bates  <bates@wisc.edu>
1884    
1885            * src/lmer.c (Lind): Definition of Lind was backwards.  This only
1886            had an effect in cases with more than 2 grouping factors.
1887    
1888    2005-01-03  Douglas Bates  <bates@wisc.edu>
1889    
1890            * src/lmeRep.c (lmer_variances): change from lmeRep to lmer
1891    
1892    2004-12-23  Douglas Bates  <bates@wisc.edu>
1893    
1894            * src/init.c (R_init_Matrix): Reorder calls to R_registerRoutines
1895            and R_useDynamicSymbols (suggested by B.D.Ripley).
1896    
1897    2004-12-14  Douglas Bates  <bates@wisc.edu>
1898    
1899            * R/sscMatrix.R: Add determinant methods
1900    
1901            * src/triplet.[ch],src/init.c (triplet_to_matrix): Add a coercion
1902            for tripletMatrix to matrix.
1903    
1904    2004-12-13  Douglas Bates  <bates@wisc.edu>
1905    
1906            * R/AllClass.R (.onLoad): Eliminate the bbCrosstab class, which is
1907            no longer used.
1908    
1909          * src/R_ldl.c: Created an R-specific version of the ldl.[ch] files          * src/R_ldl.c: Created an R-specific version of the ldl.[ch] files
1910          with dynamic allocation of scratch arrays.          with dynamic allocation of scratch arrays.
# Line 7  Line 1913 
1913          for multivariate random effects with multiple grouping factors.          for multivariate random effects with multiple grouping factors.
1914          Fixes part but not all of #15.          Fixes part but not all of #15.
1915    
1916  2004-12-03  Douglas Bates  <bates@bates1-home>  2004-12-03  Douglas Bates  <bates@wisc.edu>
1917    
1918          * src/lmeRep.c (lmeRep_factor): order of operations for multiple          * src/lmeRep.c (lmeRep_factor): order of operations for multiple
1919          scalar grouping factors corrected.          scalar grouping factors corrected.
1920    
1921  2004-11-29  Douglas Bates  <bates@bates1-home>  2004-11-29  Douglas Bates  <bates@wisc.edu>
1922    
1923          * src/bCrosstab.c: remove diag_update which is no longer used          * src/bCrosstab.c: remove diag_update which is no longer used
1924    
1925  2004-11-16  Douglas Bates  <bates@bates1-home>  2004-11-16  Douglas Bates  <bates@wisc.edu>
1926    
1927          * src/Metis_utils.c: Move metis.h include to C sources so that the          * src/Metis_utils.c: Move metis.h include to C sources so that the
1928          .h file can be included.          .h file can be included.
1929    
1930  2004-11-12  Douglas Bates  <bates@bates1-home>  2004-11-12  Douglas Bates  <bates@wisc.edu>
1931    
1932          * src/LU.c,geMatrix.c,trMatrix.c, etc.:          * src/LU.c,geMatrix.c,trMatrix.c, etc.:
1933          Complete allocation of slots in NEW_OBJECT.          Complete allocation of slots in NEW_OBJECT.
1934    
1935          * src/Mutils.h: Moved list of symbols to an include file          * src/Mutils.h: Moved list of symbols to an include file
1936    
1937  2004-11-11  Douglas Bates  <bates@bates1-home>  2004-11-11  Douglas Bates  <bates@wisc.edu>
1938    
1939          * src/geMutils.c (Matrix_init): remove unused function          * src/geMutils.c (Matrix_init): remove unused function
1940    
1941  2004-11-10  Douglas Bates  <bates@bates1-home>  2004-11-10  Douglas Bates  <bates@wisc.edu>
1942    
1943          * src/cscMatrix.c (csc_to_imagemat): removed unused function          * src/cscMatrix.c (csc_to_imagemat): removed unused function
1944    
1945  2004-11-05  Douglas Bates  <bates@bates1-home>  2004-11-05  Douglas Bates  <bates@wisc.edu>
1946    
1947          * src/Makefile.win (SOURCES_C): Keep consistent with Makefile          * src/Makefile.win (SOURCES_C): Keep consistent with Makefile
1948    
1949  2004-10-27  Douglas Bates  <bates@bates1-home>  2004-10-27  Douglas Bates  <bates@wisc.edu>
1950    
1951          * R/pdmatrix.R: remove PACKAGE="Matrix" in .Call calls          * R/pdmatrix.R: remove PACKAGE="Matrix" in .Call calls
1952    
1953  2004-10-04  Douglas Bates  <bates@bates1-home>  2004-10-04  Douglas Bates  <bates@wisc.edu>
1954    
1955          * src/init.c: Created R_init_Matrix and added registration of C          * src/init.c: Created R_init_Matrix and added registration of C
1956          routines.          routines.
1957    
1958  2004-10-02  Douglas Bates  <bates@bates1-home>  2004-10-02  Douglas Bates  <bates@wisc.edu>
1959    
1960          * R/tripletMatrix.R: Force a require(lattice) for the image methods.          * R/tripletMatrix.R: Force a require(lattice) for the image methods.
1961    
1962  2004-06-15  Douglas Bates  <bates@bates7>  2004-06-15  Douglas Bates  <bates@wisc.edu>
1963    
1964          * man/trMatrix-class.Rd: Escape the % chars in .Rd files.          * man/trMatrix-class.Rd: Escape the % chars in .Rd files.
1965    

Legend:
Removed from v.388  
changed lines
  Added in v.1893

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