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

Legend:
Removed from v.392  
changed lines
  Added in v.2073

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