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

Legend:
Removed from v.726  
changed lines
  Added in v.2081

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