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 1213, Tue Feb 7 23:44:07 2006 UTC revision 2020, Wed Aug 1 15:55:52 2007 UTC
# Line 1  Line 1 
1    2007-08-01 15:44  Douglas Bates <bates@stat.wisc.edu>
2    
3            * [r4686] inst/include/Matrix.h, inst/include/Matrix_stubs.c,
4              src/chm_common.c, src/chm_common.h: Change API for
5              numeric_as_chm_dense and N_AS_CHM_DN
6    
7    2007-08-01  Martin Maechler  <maechler@stat.math.ethz.ch>
8    
9            * src/dtrMatrix.c (dtrMatrix_matrix_mm): fix dimensionality check (!)
10            * tests/matprod.R: regr.test for it
11    
12    2007-07-20  Martin Maechler  <maechler@stat.math.ethz.ch>
13    
14            * R/dMatrix.R: fix from Brian for   Math2(., digits = "missing")
15            * tests/group-methods.R: and regression-test it
16    
17    2007-07-19 19:45  Douglas Bates <bates@stat.wisc.edu>
18    
19            * [r4642] inst/include/Matrix.h, inst/include/Matrix_stubs.c,
20              inst/include/cholmod.h, src/chm_common.c, src/init.c: Export
21              triplet_to_sparse, documentation, use typedefs
22    
23    2007-07-18  Martin Maechler  <maechler@stat.math.ethz.ch>
24    
25            * man/dpoMatrix-class.Rd: added 'corMatrix' example
26    
27            * src/dsyMatrix.[ch] (dsyMatrix_as_matrix): new 'keep_dimnames' arg
28            * src/dtrMatrix.[ch] (dtrMatrix_as_matrix): ditto
29            * src/init.c, R/dsyMatrix.R, R/dtrMatrix.R, R/lgTMatrix.R: ditto
30    
31            * R/lsparseMatrix.R: bug fix in "all" method
32            * R/Ops.R (.do.Logic.lsparse): "|" bug in borderline case
33    
34            * R/dsyMatrix.R (coerce->dsTMatrix): (i,j) slots should *not* have names
35            * R/ngTMatrix.R (coerce->ngTMatrix): ditto;
36                    + matrix |-> nMatrix coercion
37            * R/pMatrix.R: + setAs()  to dMatrix and from nMatrix
38            * man/pMatrix-class.Rd: ditto
39    
40            * R/Matrix.R (Summary): method for non-dMatrix
41    
42            * tests/Class+Meth.R (extraValid): new check about "dirty" slots
43            * tests/Class+Meth.R (tstMatrixClass): test norm(.);
44                    test all Summary methods.
45    
46    2007-07-16  Martin Maechler  <maechler@stat.math.ethz.ch>
47    
48            * R/dgeMatrix.R (norm, rcond): methods for 'matrix'
49    
50    2007-07-14  Martin Maechler  <maechler@stat.math.ethz.ch>
51    
52            * R/sparseMatrix.R (norm): simple methods for sparseMatrix
53    
54            * R/pMatrix.R (t?crossprod): methods for pMatrix
55    
56    2007-07-10  Douglas Bates  <bates@stat.wisc.edu>
57    
58            * src/dgeMatrix.c (dgeMatrix_colsums): Get the logic straight.
59    
60    2007-07-09 20:45  Douglas Bates <bates@stat.wisc.edu>
61    
62            * [r4579] src/dgeMatrix.c: Untangle horrible code in dgeMatrix_colsums
63              trying to fix a subtle bug - which has been somewhere else.
64    
65    2007-07-09 19:43  Martin Maechler <maechler@stat.math.ethz.ch>
66    
67            * [r4578] src/dgeMatrix.c: "cleaned" dgeMatrix_colsums() - but did not
68              solve the bug
69    
70    2007-07-08  Martin Maechler  <maechler@stat.math.ethz.ch>
71    
72            * src/dgCMatrix.c (compressed_to_TMatrix):
73    
74    2007-07-07  Martin Maechler  <maechler@stat.math.ethz.ch>
75    
76            * src/Csparse.c (Rsparse_validate): new, to have some validity
77            checking for RsparseMatrix
78            * src/dgCMatrix.c (xRMatrix_validate): ditto
79            * src/dtCMatrix.c (tRMatrix_validate): ditto
80    
81    2007-07-07  Douglas Bates <bates@stat.wisc.edu>
82    
83            * [r4567] R/AllClass.R: Slots already in RsparseMatrix were redefined in
84              lgRMatrix
85            * [r4568] DESCRIPTION: Prepare for bug-fix release
86            * [r4570] src/CHOLMOD/Check/cholmod_write.c: Include cholmod_matrixops.h
87              for declaration of cholmod_symmetry
88    
89    2007-07-06  Martin Maechler  <maechler@stat.math.ethz.ch>
90    
91            * DESCRIPTION (Version): 0.999375 merged into the trunk; ready for
92            release.
93    
94    2007-07-06 14:11  Douglas Bates <bates@stat.wisc.edu>
95    
96            * [r4559] src/iohb.c, src/iohb.h: Remove Harwell-Boeing input/output
97              functions - no longer used
98            * [r4560] src/HBMM.c, src/Mutils.c, src/dgTMatrix.c, src/dgeMatrix.c,
99              src/dspMatrix.c, src/dsyMatrix.c, src/dtCMatrix.c,
100              src/factorizations.c, src/sparseQR.c: Replace most calls to Calloc by
101              Alloca
102    
103    2007-07-06 13:14  Martin Maechler <maechler@stat.math.ethz.ch>
104    
105            * [r4558] inst/doc/Comparisons.Rnw, src/CHMfactor.c, src/Csparse.c,
106              src/Tsparse.c, src/chm_common.c, src/chm_common.h, src/dense.c,
107              src/dgCMatrix.c, src/dsCMatrix.c, src/dtTMatrix.c, src/sparseQR.c,
108              src/t_gCMatrix_colSums.c: more R_CheckStack()s
109    
110    2007-07-05 18:12  Douglas Bates <bates@stat.wisc.edu>
111    
112            * [r4550] inst/include/Matrix.h: Add the macro N_AS_CHM_DN to "alloca"
113              the required amount of memory then call M_numeric_as_chm_dense.
114            * [r4556] src/Mutils.h, src/dgCMatrix.c: Define and use the Alloca macro
115              (like Calloc but calling alloca)
116    
117    2007-07-05  Martin Maechler  <maechler@stat.math.ethz.ch>
118    
119            * R/sparseMatrix.R (printSpMatrix): renamed from prSpMatrix()
120            and extended with more sophisticated 'col.names' option.
121            * NAMESPACE: export  printSparseMatrix()
122            * man/printSpMatrix.Rd: document, incl. examples
123    
124    2007-07-04 16:21  Douglas Bates <bates@stat.wisc.edu>
125    
126            * [r4543] src/cs_utils.c, src/cs_utils.h, src/dgCMatrix.c,
127              src/dtCMatrix.c, src/sparseQR.c: CSP typedef for *cs and macro
128              AS_CSP. API change - pass the empty structure to Matrix_as_cs.
129    
130    2007-07-04  Martin Maechler  <maechler@stat.math.ethz.ch>
131    
132            * DESCRIPTION (Version): 0.99875-4
133    
134            * tests/Class+Meth.R (tstMatrixClass): add dimnames, and hence test
135            some dimnames perservation.
136    
137            * R/dsTMatrix.R (t-method): keep dimnames
138            * R/dtTMatrix.R:  ditto
139    
140            * R/sparseMatrix.R (prSpMatrix): print colnames when non-trivial
141            and ncol(.) < 10
142    
143            * src/cs_utils.c: drop check_class() and use Matrix_check_class()
144            from Mutils.h
145    
146            * src/lgCMatrix.c ([ln]csc_to_matrix): no longer lose dimnames,
147            e.g. in as(<ngCMatrix>, "matrix")
148    
149    2007-07-01 13:27  Douglas Bates <bates@stat.wisc.edu>
150    
151            * [r4529] .: Create a branch for the API changes from the 0.99875
152              series to the 0.999375 series
153            * [r4530] DESCRIPTION, inst/include/Matrix.h,
154              inst/include/Matrix_stubs.c, src/CHMfactor.c, src/Csparse.c,
155              src/Mutils.h, src/Tsparse.c, src/chm_common.c, src/chm_common.h,
156              src/dense.c, src/dgCMatrix.c, src/dsCMatrix.c, src/dtTMatrix.c,
157              src/t_gCMatrix_colSums.c: API change - pass the empty structure to the
158              as_cholmod_x functions
159    
160    2007-06-30 09:05  Martin Maechler <maechler@stat.math.ethz.ch>
161    
162            * [r4527] trunk/Matrix/DESCRIPTION, trunk/Matrix/NAMESPACE,
163              trunk/Matrix/inst/doc/Comparisons.Rnw: add session- and hardware-info
164              to Comparisons
165    
166    >>>>>>> .merge-right.r4561
167    2007-06-29  Martin Maechler  <maechler@stat.math.ethz.ch>
168    
169            * DESCRIPTION (Version): 0.99875-3 ready to be released.
170    
171            * R/sparseMatrix.R (spMatrix): make spMatrix(3,4) working
172    
173            * R/AllGeneric.R: set "Math" (and "Math2") group generics in a way
174            that should also work in a future version of R.
175    
176    2007-06-21  Martin Maechler  <maechler@stat.math.ethz.ch>
177    
178            * NAMESPACE, R/AllClass.R: "xsparseVector" class union.
179    
180            * R/sparseVector.R: more *sparseVector coercions, notably for
181            non - double ones.
182    
183    2007-06-19  Martin Maechler  <maechler@stat.math.ethz.ch>
184    
185            * R/colSums.R: new file for all (col|row)(Sums|Means) methods,
186              notably the new ones building on the new .Call(.)s:
187    
188            * src/dgCMatrix.c (DEF_gCMatrix_COLSUMS): use to define
189            all 4 of [dlin]gCMatrix_colSums().
190    
191    2007-06-18 16:12  Douglas Bates <bates@stat.wisc.edu>
192    
193            * [r4472] src/Syms.h, src/init.c: Added Matrix_lengthSym
194            * [r4473] src/dgCMatrix.c: Modified dgCMatrix_colSums for sparseVector
195              result
196    
197    2007-06-16  Martin Maechler  <maechler@stat.math.ethz.ch>
198    
199            * R/kronecker.R: fix typo (could lead to inf.recursion)
200            * test/simple.R: testing that
201    
202            * R/sparseMatrix.R (prSpMatrix): change to be used as print()
203            method as well (which can have arguments, show() can't).
204    
205    2007-06-16 15:52  Douglas Bates <bates@stat.wisc.edu>
206    
207            * [r4466] R/dgCMatrix.R, src/dgCMatrix.c, src/dgCMatrix.h, src/init.c:
208              added dgCMatrix_colSums for [col,row][Sums,Means]
209    
210    2007-06-15 23:15  Douglas Bates <bates@stat.wisc.edu>
211    
212            * [r4460] R/sparseMatrix.R, man/dgCMatrix-class.Rd, src/dgCMatrix.c,
213              src/dgCMatrix.h, src/init.c: added lm.fit.sparse (unexported),
214              coercion of "factor" to "dgCMatrix" and dgCMatrix_cholsol
215            * [r4461] R/AllClass.R, man/sparseMatrix-class.Rd: draft "indicators"
216              class
217            * [r4463] R/sparseMatrix.R, man/dgCMatrix-class.Rd,
218              man/sparseMatrix-class.Rd: Don't need an "indicators" class - use the
219              row names to store the levels - duh!  Added an example.
220    
221    2007-06-14  Martin Maechler  <maechler@stat.math.ethz.ch>
222    
223            * src/Csparse.c (Csparse_validate): check for *repeated* entries
224            thanks to example from Christian Buchta; with a test here:
225            * tests/simple.R:
226    
227    2007-06-07  Martin Maechler  <maechler@stat.math.ethz.ch>
228    
229            * R/Auxiliaries.R (callGeneric): another fix, needed for some cases
230            of colSums(*, sparseResult = TRUE)
231    
232    2007-06-06  Martin Maechler  <maechler@stat.math.ethz.ch>
233    
234            * R/lsparseMatrix.R, R/ldenseMatrix.R (all, any): change default to
235            'na.rm = FALSE' as "everywhere" else in R.
236    
237    2007-06-05 Douglas Bates <bates@stat.wisc.edu>
238    
239            * [r4421] src/CSparse_install.sh: Modify for new organization of
240              CSparse package
241            * [r4425] src/UFsparse_download.sh: Update to version 3.0.0 of
242              SuiteSparse
243            * [r4426] src/Makefile: add ./UFconfig to the include path for
244              compilation
245            * [r4427] src/cs.[ch]: update to CSparse version 2.2.0
246            * [r4428] inst/doc/UFsparse/* src/{AMD,CHOLMOD,COLAMD}/*
247              src/UFconfig/UFconfig.h: Update to version 3.0.0 of SuiteSparse
248    
249    2007-06-05  Martin Maechler  <maechler@stat.math.ethz.ch>
250    
251            * R/Auxiliaries.R (emptyColnames): + argument msg.if.not.empty, used in
252            * R/sparseMatrix.R (prSpMatrix): now gives a message about
253            suppressed column names.
254    
255    2007-06-04 17:13  Douglas Bates <bates@stat.wisc.edu>
256    
257            * [r4418] src/Csparse.c, src/HBMM.c, src/Mutils.c, src/Mutils.h,
258              src/Tsparse.c, src/chm_common.c, src/chm_common.h, src/dgCMatrix.c,
259              src/dgeMatrix.c, src/dpoMatrix.c, src/dpoMatrix.h, src/dppMatrix.c,
260              src/dppMatrix.h, src/dsCMatrix.c, src/dspMatrix.c, src/dspMatrix.h,
261              src/dsyMatrix.c, src/dsyMatrix.h, src/dtpMatrix.c, src/dtrMatrix.c:
262              Remove warnings after change to const char* CHAR
263    
264    2007-06-04 17:11  Douglas Bates <bates@stat.wisc.edu>
265    
266            * [r4417] inst/include/Matrix_stubs.c, inst/include/cholmod.h: Corrected
267              type of M_cholmod_ssmult
268    
269    2007-06-03 14:42  Douglas Bates <bates@stat.wisc.edu>
270    
271            * [r4412] inst/include/Matrix_stubs.c, inst/include/cholmod.h,
272              src/init.c: Yet another cholmod export - cholmod_ssmult
273    
274    2007-05-23  Martin Maechler  <maechler@stat.math.ethz.ch>
275    
276            * NAMESPACE: exported drop0(), since
277            * man/drop0.Rd: I have seen several cases, I really wanted to use
278            it, so our users may want too.
279    
280    2007-05-22  Martin Maechler  <maechler@stat.math.ethz.ch>
281    
282            * man/colSums.Rd: separately document colSums() etc, since these
283            have the extra argument 'sparseResult'.
284    
285    2007-05-21  Martin Maechler  <maechler@stat.math.ethz.ch>
286    
287            * R/sparseMatrix.R (spMatrix): utility (T)sparse Matrix constructor;
288            * man/spMatrix.Rd: docu., including examples
289    
290            * R/Auxiliaries.R (sp.colMeans): etc, using a patched callGeneric(),
291            in order to make colMeans() etc fast *and* correct.
292            * R/sparseVector.R (replSPvec): "[<-" functionality for
293            sparseVectors; tested in
294            * tests/simple.R:
295    
296    2007-05-19  Martin Maechler  <maechler@stat.math.ethz.ch>
297    
298            * R/sparseMatrix.R (print.sparseSummary): and summary() method for
299            (very) sparse Matrices; output similar to Matlab's print().
300    
301    2007-05-17  Douglas Bates  <bates@stat.wisc.edu>
302    
303            * src/HBMM.c (Matrix_writeMatrixMarket): Write 1-based, not
304            0-based, indices (Jose Quesada <quesada@gmail.com>).
305    
306    2007-05-16  Douglas Bates  <bates@stat.wisc.edu>
307    
308            * R/CHMfactor.R: Added solve methods for a CHMfactor object.
309    
310    2007-05-16  Martin Maechler  <maechler@stat.math.ethz.ch>
311    
312            * R/Auxiliaries.R (sparsapply): new utility, much faster than
313            tapply1() for large sparse matrices.
314    
315    2007-05-15  Martin Maechler  <maechler@stat.math.ethz.ch>
316    
317            * R/Matrix.R (dim<-): reshape now via sparseVector.
318    
319            * R/sparseVector.R: methods and function for
320            * R/AllClass.R: new "sparseVector" class and daughters.
321            * NAMESPACE: export new classes
322    
323    2007-05-14  Martin Maechler  <maechler@stat.math.ethz.ch>
324    
325            * DESCRIPTION (Version): 0.99875-1
326            * src/Makefile.win: also remove Lapack code from here (cf. 04-25).
327    
328    2007-05-11  Martin Maechler  <maechler@stat.math.ethz.ch>
329    
330            * R/Tsparse.R ([, Tsparse): fix last case: *duplicated*, symmetric
331            indexing
332            * tests/indexing.R: test set for that.
333    
334    2007-05-08  Martin Maechler  <maechler@stat.math.ethz.ch>
335    
336            * R/Tsparse.R (replTmat): fix the case of *duplicated* index
337            entries.
338            * tests/indexing.R(out): add regression test for it
339    
340    2007-04-30  Martin Maechler  <maechler@stat.math.ethz.ch>
341    
342            * R/(l(dense|sparse))?Matrix.R (!): use 'x', not 'e1' as argument
343            name for "!" method definitions.
344    
345    2007-04-26  Martin Maechler  <maechler@stat.math.ethz.ch>
346    
347            * R/Tsparse.R (intI): new utility, used for "[" :
348                    Cleanup up there, and fixes for duplicated indices - more TODO!
349    
350            * tests/indexing.R(out): more tests
351    
352    2007-04-25  Douglas Bates  <bates@stat.wisc.edu>
353    
354            * DESCRIPTION,src/Makefile: require R>= 2.5.0 and remove Lapack
355            code that is now part of the R Lapack library.
356    
357            * src/init.c,inst/include/{Matrix_stubs.c,cholmod.h}:export
358            cholmod_factorize_p (used in lme4 for GLMMs and NLMMs).
359    
360    2007-04-21  Martin Maechler  <maechler@stat.math.ethz.ch>
361    
362            * R/Matrix.R (image): method for all Matrices, not just sparse ones.
363    
364    2007-04-17  Martin Maechler  <maechler@stat.math.ethz.ch>
365    
366            * R/Auxiliaries.R (tapply1): unname(.) -> colSums() etc don't end
367            up with extraneous names '0'...'<n-1>'
368    
369    2007-04-12  Martin Maechler  <maechler@stat.math.ethz.ch>
370    
371            * R/dgTMatrix.R (mat2dgT): care about NAs
372    
373    2007-04-11  Martin Maechler  <maechler@stat.math.ethz.ch>
374    
375            * R/kronecker.R: triangularity preserving methods
376    
377    2007-03-27  Martin Maechler  <maechler@stat.math.ethz.ch>
378    
379            * R/kronecker.R: new file collecting kronecker() methods in one
380                    place.  Goal: become much faster!
381    
382    2007-03-23  Martin Maechler  <maechler@stat.math.ethz.ch>
383    
384            * src/dtCMatrix.c (dtCMatrix_solve): use the new code from Kasper
385            Kristensen based cs_spsolve() instead of _lsolve & _usolve which
386            can be much faster.
387    
388            * tests/matprod.R: add regression tests for these (upper & lower).
389    
390    2007-03-19  Martin Maechler  <maechler@stat.math.ethz.ch>
391    
392            * R/Matrix.R (diff): method for our Matrices.
393    
394            * R/sparseMatrix.R (isDiagonal): check dim()!
395    
396    2007-03-17  Martin Maechler  <maechler@stat.math.ethz.ch>
397    
398            * R/Matrix.R (dim<-): new method for "reshape()" built on a
399            proposal from Tamas Papp.
400    
401    2007-03-16  Martin Maechler  <maechler@stat.math.ethz.ch>
402    
403            * R/AllGeneric.R: remove all  if(!isGeneric(.))  clauses
404    
405            * R/zzz.R (.onLoad, .onUnload): do *not* leave bind_activation(TRUE);
406            rather define and export  cBind() and rBind() only.
407            --> useRs *must* change code that used to have cbind()/rbind() !!
408    
409            * R/bind.R: change tests from cbind() to cBind() and similarly to rBind()
410            * R/bind.Rout.save: ditto
411    
412    2007-02-16  Douglas Bates  <bates@r-project.org>
413    
414            * DESCRIPTION (Date, Version): 0.9975-11 with new date
415            * src/dgCMatrix.c (R_to_CMatrix, compressed_to_TMatrix): remove
416            const modifier on declaration of the array 'valid'
417    
418    2007-02-12  Douglas Bates  <bates@stat.wisc.edu>
419    
420            * R/CHMfactor.R: Add image method (coercion to sparseMatrix).
421    
422    2007-02-05  Martin Maechler  <maechler@stat.math.ethz.ch>
423    
424            * DESCRIPTION (Date, Version): 0.9975-10 with new date.
425    
426            * R/Ops.R (Arith): make sure Csparse o Csparse also works for e.g. ntCMatrix
427            * tests/simple.R: test the above and some of these coercions:
428    
429            * R/nsparseMatrix.R: coercing "Csparse" to "lsparseMatrix";
430                    be careful to avoid infinite recursion, using new coercions in
431            * R/ngCMatrix.R and nsC... and ntC...
432            * R/lsparseMatrix.R: ditto
433    
434            * R/SparseM-conv.R: more conversion, notably for triplet matrices.
435    
436            * src/dgCMatrix.c (R_to_C_Matrix): port Doug's fix and
437            * R/Rsparse.R: reactivate .Call()s
438    
439            * tests/Class+Meth.R: a bit more on actual classes
440    
441    2007-02-04  Douglas Bates  <bates@stat.wisc.edu>
442    
443            * src/dgCMatrix.c (compressed_to_TMatrix): fix memory bug using strdup()
444    
445    2007-02-03  Martin Maechler  <maechler@stat.math.ethz.ch>
446    
447            * DESCRIPTION (Version): 0.9975-10 to upload
448    
449            * tests/Class+Meth.R (tstMatrixClass): require coercions to
450            specific classes less unconditionally.
451    
452            * R/Auxiliaries.R: get rid of as_Tsparse() and as_Rsparse()
453    
454            * R/Tsparse.R (triu): etc, use as(*, "TsparseMatrix") instead of as_Tsparse()
455    
456            * R/Rsparse.R (.R.2.T): R-level workaround using compressed_to_TMatrix.
457            * R/Rsparse.R (.R.2.C): R-level workaround since C-level
458            R_to_CMatrix segfaults on one platform.
459            Eliminate most coercion method to *specific* classes, and replace
460            with virtual classes coercions.
461    
462    
463    2007-02-01  Martin Maechler <maechler@stat.math.ethz.ch>
464    
465            * src/init.c: export the CHM...._validate() placeholders, since
466            they *are* called.
467    
468            * tests/Class+Meth.R (classCanCoerce): and starting to test
469            all as(<from>, <to>)
470    
471    2007-01-30  Martin Maechler  <maechler@stat.math.ethz.ch>
472    
473            * R/Tsparse.R ([): more care when subsetting triangular Tsparse
474            * tests/indexing.R: tested now
475            * tests/indexing.Rout.save: updated
476    
477            * src/Csparse.c (Csparse_to_dense): use Rkind = -1 for PATTERN to
478            * src/chm_common.c (chm_dense_to_SEXP): return "ngeMatrix" when
479            appropriate.
480    
481            * NAMESPACE: export a trivial
482            * R/Matrix.R: drop() Matrix-method
483    
484            * R/AllClass.R: moved all prototypes to virtual super classes.
485    
486            * R/Rsparse.R: many more coercions to have less exceptions in
487            * tests/Class+Meth.R:
488    
489            * R/Ops.R (Compare): tweak for case with NA
490            * tests/simpl.R: hence another 'FIXME' eliminated
491    
492    2007-01-29  Martin Maechler  <maechler@stat.math.ethz.ch>
493    
494            * R/diagMatrix.R (solve): the obvious methods for diagonalMatrix
495            objects.
496    
497            * tests/Class+Meth.R (tstMatrixClass): now testing diag(), nnzero(),
498              and more of "!", "&", "|", all, any; coercions
499    
500            * R/Rsparse.R: many coercions (which enable quite a few other
501            methods), thanks to enhancements in
502            * src/dgCMatrix.c (R_to_CMatrix): new, and
503            * src/dgCMatrix.c (compressed_to_TMatrix): now for (d,l,n) ,
504            symmetric & triangular and ..RMatrix objects.
505    
506            * src/TMatrix_as.c (Matrix_T_as_DENSE,Matrix_T_as_GENERAL):
507            renamed file from src/dsTMatrix.c;
508            now dealing with symmetric and triangular Tsparse coercions, both
509            to dense and general.
510    
511    2007-01-27  Martin Maechler  <maechler@stat.math.ethz.ch>
512    
513            * src/dsTMatrix.c: has now "l" and "n" methods besides the "d" ones.
514    
515            * R/Ops.R (Arith): <dgCMatrix> o <numeric> now remains sparse
516            where sensible when the <numeric> is of length > 1.
517    
518    2007-01-26  Martin Maechler  <maechler@stat.math.ethz.ch>
519    
520            * R/Matrix.R ([<-): for M[] <- value: fix length
521    
522    2007-01-25  Martin Maechler  <maechler@stat.math.ethz.ch>
523    
524            * R/Auxiliaries.R (n2l_Matrix): new, to be used in
525            * R/ndenseMatrix.R: new coercions n* -> l*
526    
527    2007-01-22  Martin Maechler  <maechler@stat.math.ethz.ch>
528    
529            * R/triangularMatrix.R: new file; simple triu() and tril() methods.
530    
531            * R/Ops.R ("Logic"): and other "Ops", many updates
532    
533    2007-01-18  Martin Maechler  <maechler@stat.math.ethz.ch>
534    
535            * src/Mutils.h (SET_DimNames): new utility
536    
537            * R/Auxiliaries.R (nnzero): improved and now exported via
538    
539            * NAMESPACE: + nnzero(); length() == prod(dim(.)) method for all "Matrix" objects
540    
541    2007-01-17  Martin Maechler  <maechler@stat.math.ethz.ch>
542    
543            * R/diagMatrix.R (!): fix typo.
544    
545    2007-01-16  Martin Maechler  <maechler@stat.math.ethz.ch>
546    
547            * R/Auxiliaries.R (as_Csparse): and quite a few others:
548                    allow to pass class definition --> speedup
549            * R/sparseMatrix.R: apply the above
550    
551            * R/Csparse.R: coercion Csparse* to dense* now preserves shape properties.
552    
553            * src/Mutils.h (mMatrix_as_geMatrix): new, based on
554            * src/Mutils.c (dup_mMatrix_as_geMatrix): new; generalization of
555            old dup_mMatrix_as_dgeMatrix), eliminating a long-standing "FIXME".
556    
557            * src/dense.c (dense_to_Csparse): use new mMatrix_as_geMatrix()
558    
559            * R/denseMatrix.R (.dense2C): based on dense_to_Csparse: name it,
560            and use it for "sparse*" as well, since it's faster than the
561            as_Csparse(.) way.
562    
563    2007-01-15  Martin Maechler  <maechler@stat.math.ethz.ch>
564    
565            * R/Ops.R ("Logic"): more methods, notably an  <lgC> o <lgC> one.
566    
567    2007-01-12  Martin Maechler  <maechler@stat.math.ethz.ch>
568    
569            * R/Tsparse.R (.TM.repl.i.2col): new internal function to be used
570            as method for   M[ ij ] <- v
571            * R/Csparse.R:: go via Tsparse for "M[ij] <- v"
572    
573            * R/Ops.R: "Compare" for (C|R)sparse: need pointer slot for all
574            FALSE answer
575    
576            * R/Csparse.R (replCmat): fix the "all non-zero" case with reordering
577            * tests/indexing.R: test it, and some of the above
578    
579    2007-01-05  Martin Maechler  <maechler@stat.math.ethz.ch>
580    
581            * R/Auxiliaries.R (is_duplicatedT): new utility
582    
583    2007-01-05  Douglas Bates  <bates@stat.wisc.edu>
584    
585            * src/init.c (R_init_Matrix): export cholmod_scale
586    
587    2006-12-30  Martin Maechler  <maechler@stat.math.ethz.ch>
588    
589            * R/zzz.R (tmp): for R >= 2.5.0, extend formals of our
590            base::as.matrix to (x, ...)
591    
592    2006-12-28  Martin Maechler  <maechler@stat.math.ethz.ch>
593    
594            * R/Ops.R ("Arith" etc): move almost all "Ops" methods to new R
595            file; start using "Logic", hence
596    
597            * DESCRIPTION (Depends): R >= 2.4.1 (since we want "Logic")
598            * NAMESPACE: import and export "Logic"
599    
600    2006-12-27  Martin Maechler  <maechler@stat.math.ethz.ch>
601    
602            * src/zpotfr.f and dependencies: use LAPACK 3.1 version
603            only needed previously to R version 2.5.0.
604    
605    2006-12-26  Martin Maechler  <maechler@stat.math.ethz.ch>
606    
607            * DESCRIPTION (Date, Version): 0.9975-8, ready for release
608    
609            * R/Tsparse.R (replTmat): fix subassignment of triangular
610            * R/Csparse.R (replCmat): ditto
611            * tests/indexing.R: more tests, incl the above fix
612    
613    2006-12-23  Martin Maechler  <maechler@stat.math.ethz.ch>
614    
615            * R/Auxiliaries.R (drop0): extend for non CSparse
616            * R/Auxiliaries.R (diagU2N): should work for all sparseMatrix
617    
618            * src/Csparse.c (Csparse_to_Tsparse, Csparse_general_to_symmetric):
619                    use uplo correctly (!); other places: use uplo_P() macro
620    
621            * R/Csparse.R (replCmat): call diagU2N() when needed
622            * R/Tsparse.R (replTmat): ditto
623    
624            * src/dtCMatrix.c (tCMatrix_validate): new
625            * src/dtTMatrix.c (tTMatrix_validate): new, used in
626            * R/AllClass.R: for validity of dtC, dsC, and dtT, dsT.
627    
628            * R/diagMatrix.R (replDiag): to use in [<-
629    
630    2006-12-22  Martin Maechler  <maechler@stat.math.ethz.ch>
631    
632            * R/Auxiliaries.R (as_Csparse2, as_geSimpl): new functions;
633                    also more general diagU2N().
634    
635    2006-12-21  Martin Maechler  <maechler@stat.math.ethz.ch>
636    
637            * R/bind2.R: new file for all cbind2(), rbind() methods moved here
638            from R/<foo>Matrix.R files. Better diagonal & improved sparse methods.
639    
640    2006-12-20  Martin Maechler  <maechler@stat.math.ethz.ch>
641    
642            * tests/bind.R: a few more cases
643            * R/Auxiliaries.R (.M.kind): also work for atomic vectors
644    
645            * R/denseMatrix.R (cbind2/rbind2): moved here (and generalized) from
646            * R/ddenseMatrix.R (cbind2/rbind2)
647            * R/Tsparse.R (replTmat): final(?!) fix for "[<-" ..
648            * tests/indexing.R
649            * tests/indexing.Rout.save: updated
650    
651    2006-12-18  Martin Maechler  <maechler@stat.math.ethz.ch>
652    
653            * R/Tsparse.R (replTmat): fixed a remaining "[<-" bug in
654            * tests/indexing.R
655    
656    2006-12-15  Martin Maechler  <maechler@stat.math.ethz.ch>
657    
658            * R/sparseMatrix.R (prSpMatrix): "." alignment much improved:
659            align with proper position of "0", i.e., right for integers.
660            argument 'align' by default is "fancy".
661    
662    2006-12-14  Martin Maechler  <maechler@stat.math.ethz.ch>
663    
664            * R/sparseMatrix.R: delegate "Compare" to "Csparse.."
665            * R/Csparse.R: and fix "Compare" for more cases.
666            * tests/Class+Meth.R: test some of these (m == m, m != m)
667    
668    2006-12-13  Martin Maechler  <maechler@stat.math.ethz.ch>
669    
670            * R/lsparseMatrix.R: all() and any() methods
671            * R/ldenseMatrix.R:      ditto
672            * NAMESPACE, R/Matrix.R: ditto
673    
674            * man/all-methods.Rd: document them minimally
675    
676            * tests/simple.R: add a few examples for these
677    
678    2006-12-11  Martin Maechler  <maechler@stat.math.ethz.ch>
679    
680            * R/Tsparse.R ([): fix long standing typo in symmetric case
681            * man/dsCMatrix-class.Rd: add example exhibiting the above case
682    
683    2006-12-10  Douglas Bates  <bates@stat.wisc.edu>
684    
685            * src/CHMfactor.c (CHMfactor_to_sparse): change LDL factorization
686            to LL before converting to a sparse matrix. (The LDL form can be
687            converted to a sparse matrix but it is implicitly a unit
688            triangular matrix and a diagonal matrix overwritten on the diagonal.)
689    
690    2006-12-09  Douglas Bates  <bates@stat.wisc.edu>
691    
692            * src/chm_common.c (chm_factor_to_SEXP): allocate and fill the Dim slot.
693    
694    2006-12-08  Douglas Bates  <bates@stat.wisc.edu>
695    
696            * DESCRIPTION (Version): updated -> release 0.9975-7
697            * src/{init.c,chm_common.c}, inst/include/*: export cholmod_analyze_p
698    
699    2006-11-30  Martin Maechler  <maechler@stat.math.ethz.ch>
700    
701            * R/diagMatrix.R (%*%): write a direct [diag o Csparse] method
702    
703    2006-11-29  Douglas Bates  <bates@stat.wisc.edu>
704    
705            * src/dgeMatrix.c (dgeMatrix_solve): Check error code from dgetri.
706            * tests/dg_Matrix.R: Add Barry Rowlingson's test of a matrix that
707            is exactly singular.
708    
709    2006-11-07  Martin Maechler  <maechler@stat.math.ethz.ch>
710    
711            * DESCRIPTION (Date): updated -> release 0.9975-6
712    
713    2006-11-06  Martin Maechler  <maechler@stat.math.ethz.ch>
714    
715            * R/Csparse.R (replCmat): symmetric indexing of symmetric matrix
716            now returns symmetric.
717    
718            * R/zzz.R ("diag<-"): replace "diag<-" in base for R <= 2.4.x
719    
720            * R/Matrix.R (.M.sub.i.2col):  new, for  M[ cbind(i,j) ] indexing.
721            * R/Matrix.R (.M.repl.i.2col): new, for  M[ cbind(i,j) ] <- value
722    
723            * R/Auxiliaries.R (.type.kind): added
724    
725    2006-11-04  Martin Maechler  <maechler@stat.math.ethz.ch>
726    
727            * src/cs.[ch]: updated to CSparse Version 2.0.3 by simply
728            running src/CSparse_install.sh
729    
730            * R/denseMatrix.R: "[": keep symmetric on symmetric indexing.
731    
732    2006-11-03  Martin Maechler  <maechler@stat.math.ethz.ch>
733    
734            * src/dsCMatrix.c (dsCMatrix_Csparse_solve): new
735            * R/dsCMatrix.R (solve): "fully-sparse" using the above.
736    
737            * R/AllClass.R: "pMatrix" now also inherits from "generalMatrix"
738    
739            * tests/Class+Meth.R (tstMatrixClass): now assure
740            the (important in method programming) property :
741    
742                    ###>>  Every "Matrix" is either
743                    ###>>  "general*", "symmetric*", "triangular*" or "diagonal*"
744    
745                    (where "*" stands for "Matrix")
746    
747            * R/Auxiliaries.R (diagU2N): now .Call()s Csparse_diagU2N for <Csparse>
748    
749            * R/dMatrix.R (Compare(<dMatrix>,<dMatrix>): update and
750            * tests/validObj.R: checks for "comparison"
751    
752            * R/sparseMatrix.R ([): improved indexing for sparse;
753                    trying to keep <symmetric>[ n, n] symmmetric
754    
755            * tests/indexing.R: indexing for logical sparse now ok
756    
757    
758    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
759    
760            * src/Tsparse.c: use xTsparse_validate() , and hence remove
761    
762            * src/{ltC,lsC,lgT}Matrix.[ch]: removed
763    
764    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
765    
766            * R/AllClass.R (Matrix-class): check length of dimnames in validity.
767    
768            * tests/simple.R: validObject() checking the above.
769    
770            * src/dgCMatrix.c (xCMatrix_validate): new, small and simple,
771            replacing both dgCMatrix_validate and lgCM*.
772    
773            * src/Csparse.c (Csparse_dense_prod, etc): do not lose dimnames;
774            fix dimnames setting in other places.
775            * src/chm_common.c (chm_dense_to_SEXP): now can pass dimnames
776    
777    2006-11-01  Martin Maechler  <maechler@stat.math.ethz.ch>
778    
779            * R/Csparse.R,src/Csparse.c, etc: tcrossprod(<CsparseM>,<CsparseM>)
780    
781            * R/sparseMatrix.R (isSymmetric): drop 'factors' slot for
782            symmetry test, via
783            * R/Auxiliaries.R (.as.dgC.0.factors):
784    
785    2006-11-01  Douglas Bates  <bates@r-project.org>
786    
787            * R/Csparse.R,src/Csparse.c,tests/matprod.R,
788            man/CsparseMatrix-class.Rd: crossprod(<CsparseMatrix>,
789            <CsparseMatrix>) added
790    
791    2006-10-30  Martin Maechler  <maechler@stat.math.ethz.ch>
792    
793            * tests/matprod.R: add a variation of Harri's example
794    
795            * R/dsparseMatrix.R: fix crossprod(<dsparse>, <dge>) to *not*
796            recursive infinitely.
797    
798            * R/dgCMatrix.R: + solve(<sparse>, <sparse>)
799    
800            * tests/indexing.R: add test for the "<" bug fixed 10-27 in R/dMatrix.R
801    
802    2006-10-28  Martin Maechler  <maechler@stat.math.ethz.ch>
803    
804            * tests/Class+Meth.R (tstMatrixClass): more: use non-trivial
805            matrix if possible; test m+m == 2*m; now test dgRMatrix.
806            * R/dgRMatrix.R (.to.dgR): a few more coercions, in order to
807            satisfy the above test.
808    
809    2006-10-27  Martin Maechler  <maechler@stat.math.ethz.ch>
810    
811            * R/Matrix.R (Ops):  <Matrix> o <matrix>  method added
812    
813            * R/dgCMatrix.R: solve(a, b="missing") based on
814            * src/dgCMatrix.c (dgCMatrix_matrix_solve): extend to work with
815            RHS = NULL.
816    
817            * R/diagMatrix.R (diagdiagprod): extend %*% etc to ldiMatrix;
818            add more (needed) [t]crossprod() methods.
819    
820            * man/ddiMatrix-class.Rd: more info, notably on 'diag'
821    
822            * R/Auxiliaries.R (as_CspClass): cleanup
823            (drop0): internal utility for "Csparse_drop(*, 0)"
824            (.bail.out.2): encourage active feedback
825    
826    2006-10-26  Martin Maechler  <maechler@stat.math.ethz.ch>
827    
828            * R/dMatrix.R(Compare): new(), then slots [no validity check]
829    
830            * src/Csparse.c (Csparse_validate): fixed (and more efficient in
831            non-valid or 'sorted' case).
832    
833            * R/dsparseMatrix.R: add "chol" method.
834            * R/ddenseMatrix.R: ditto
835    
836            * R/diagMatrix.R (Ops): group methods for  <diagonal> o <sparse>
837            * NAMESPACE (Ops)
838            * R/diagMatrix.R (diag2T): simple utility used "higher level"
839            coercion; deprecating direct lower level coercions.
840    
841            * R/*.R (seq): use seq_len() and seq_along() where possible.
842    
843    
844    2006-10-23  Martin Maechler  <maechler@stat.math.ethz.ch>
845    
846            * DESCRIPTION (Version): 0.9975-5 ready for release
847    
848    2006-10-20  Douglas Bates  <bates@stat.wisc.edu>
849    
850            * src/init.c (R_init_Matrix): export more cholmod CCallable functions.
851    
852    2006-10-20  Martin Maechler  <maechler@stat.math.ethz.ch>
853    
854            * R/AllClass.R (corMatrix): add 'validity' check;
855                    comment out unused "LDL" class definition
856            * NAMESPACE: mention, but do not export "LDL" class
857            * R/corMatrix.R: new (simple), needed for R-devel with
858            * tests/Class+Meth.R (tstMatrixClass): 1 exception for corMatrix
859              coerce and t() exceptions for all 5 'Mat.MatFact' classes.
860    
861    2006-10-19  Douglas Bates  <bates@stat.wisc.edu>
862    
863            * src/chm_common.h: Add R_cholmod_start to initialize cholmod to
864            use Rprintf and R's error handling.
865    
866    2006-10-17  Martin Maechler  <maechler@stat.math.ethz.ch>
867    
868            * R/diagMatrix.R (%*%): rep(*, each = .) in Matrix %*% diagonal.
869            * tests/matprod.R: add tests for the bug fixed.
870    
871    2006-10-11  Douglas Bates  <bates@stat.wisc.edu>
872    
873            * src/HBMM.[ch]: remove HarwellBoeing format for writing.
874            * src/SOURCES_C.mkf (SOURCES_C): no longer compile iohb.c
875    
876    2006-10-06  Douglas Bates  <bates@stat.wisc.edu>
877    
878            * R/d[gs]CMatrix.R: deprecate the writeHB function.  Use writeMM instead.
879    
880    2006-10-06  Martin Maechler  <maechler@stat.math.ethz.ch>
881    
882            * DESCRIPTION (Version): 0.9975-3
883    
884            * R/diagMatrix.R (bdiag): new function constructing block diagonal
885            (sparse) matrices.
886            * man/bdiag.Rd: docu + examples
887    
888            * R/Csparse.R (replCmat): calling new Csparse_drop() now.
889    
890            * src/Csparse.c (Csparse_general_to_symmetric, Csparse_drop): new functions
891            * R/lsCMatrix.R: three more coercions to lsC (thanks to the above)
892    
893            * R/diagMatrix.R (Diagonal): '[<-' method for diag.matrices such
894            that result is sparse or diagonal (and not dense).
895    
896            * man/Subassign-methods.Rd: fix examples
897    
898            * R/Matrix.R (Matrix):  Matrix(0, *) or Matrix(*, sparse=TRUE)
899            should always return a sparse (and not sometimes a diagonal) matrix.
900    
901    2006-10-05  Martin Maechler  <maechler@stat.math.ethz.ch>
902    
903            * R/Matrix.R ([<-): also for value "Matrix" or "matrix"
904    
905    2006-10-04  Douglas Bates  <bates@stat.wisc.edu>
906    
907            * DESCRIPTION (Version): 0.9975-2
908    
909            * inst/include/Matrix_stubs.c (M_cholmod_sparse_to_triplet): export more symbols
910    
911    2006-10-02  Douglas Bates  <bates@R-project.org>
912    
913            * tests/dg_Matrix.R: Simplify test taking into account new code.
914    
915    2006-09-29  Martin Maechler  <maechler@stat.math.ethz.ch>
916    
917            * R/Csparse.R (replCmat): improve for missing i / j in non-simple cases
918    
919            * R/lsTMatrix.R: new files w/ missing methods
920            * R/nsTMatrix.R:  "  'for completeness'
921    
922            * tests/Class+Meth.R: a bit less 'not.ok.classes'
923    
924            * R/Tsparse.R (t): generalized "t" method from "dgT*" to "Tsparse*"
925    
926    
927    2006-09-28  Douglas Bates  <bates@R-project.org>
928    
929            * src/dppMatrix.h: Ensure definition of dspMatrix_validate is
930            included.
931    
932            * src/init.c, inst/include/{Matrix.h,Matrix_stubs.h,cholmod.h}:
933            Export C-callable functions used in Zt_create in lme4.
934    
935    2006-09-28  Martin Maechler  <maechler@stat.math.ethz.ch>
936    
937            * DESCRIPTION (Version): 0.9975-1
938    
939            * tests/simple.R: less checks fail; using NA, found that our
940                    kronecker() is not base-compatible with NA's.
941    
942            * R/dMatrix.R: "Compare" method now implemented for all cases
943    
944            * R/Auxiliaries.R (indTri): == which([lower/upper].tri( * )) new utility
945    
946            * man/dtpMatrix-class.Rd: mention length of 'x' slot
947    
948            * src/dtpMatrix.c (dtpMatrix_validate): fix check
949            * src/dspMatrix.c (dspMatrix_validate): ditto
950    
951            * R/dtTMatrix.R (gt2tT): fix ("l" -> "n")
952              including coercion to [nl]tTMatrix.
953    
954            * R/diagMatrix.R (show): print a header line as for other classes.
955    
956    2006-09-27  Martin Maechler  <maechler@stat.math.ethz.ch>
957    
958            * src/Makefile.win (SUBDIRS): fix typo
959    
960    2006-09-19  Martin Maechler  <maechler@stat.math.ethz.ch>
961    
962            * DESCRIPTION (Date): ready to release 0.9975-0 to CRAN
963    
964    2006-09-18  Douglas Bates  <bates@stat.wisc.edu>
965    
966            * R/[CT]sparse.R (crossprod and tcrossprod): Handle the cases for x
967            symmetric and y missing in R code using %*% (cholmod_aat doesn't
968            accept a symmetric matrix).
969            * tests/group-methods.R: Uncomment test of crossprod applied to
970            lsCMatrix objects.
971    
972    2006-09-18  Martin Maechler  <maechler@stat.math.ethz.ch>
973    
974            * R/AllClass.R (symmetricMatrix): add validity method (available
975            in C for a long time). Many "n..Matrix": drop (wrong) validity arg.
976    
977            * src/lgCMatrix.c (lgCMatrix_validate): check 'x' slot (!)
978    
979            * tests/indexing.Rout.save:
980            * tests/indexing.R: additions, mainly for 'lsparse'
981    
982            * R/diagMatrix.R (Diagonal) & coercion to lgTMatrix: fixes for NA
983            case.
984    
985            * R/Auxiliaries.R (nz.NA): new utility now used in nnzero()
986    
987    2006-09-16  Martin Maechler  <maechler@stat.math.ethz.ch>
988    
989            * R/sparseMatrix.R (prSpMatrix): print logical NAs "visibly"
990                    as 'N' (1-letter - Ok?)
991    
992            * tests/group-methods.R: add test for logical + NAs
993    
994            * R/dMatrix.R ("Compare"): fix to work with NA's
995    
996            * R/AllClass.R: "Cholesky" etc now inherit from MatrixFactorization.
997    
998            * src/lgCMatrix.c (ncsc_to_matrix): renamed from lcsc_to_matrix()
999                    which is implemented.
1000    
1001    2006-09-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1002    
1003            * src/chm_common.c: coerce logical <-> double instead of
1004            typecasting;  needed for "l" matrix handling in cholmod.
1005    
1006            * tests/other-pkgs.R (graph): small extension in "graph" checks.
1007    
1008            * R/sparseMatrix.R (graphNEL -> Tsparse): method for weight case.
1009            (Tsp2grNEL): other fixes needed
1010    
1011    2006-09-11  Martin Maechler  <maechler@stat.math.ethz.ch>
1012    
1013            * R/AllClass.R ("nMatrix"): and subclasses for "nonzero pattern"
1014                    Matrices, since "lMatrix", also "lsparseM" can have NA
1015            * R/ndenseMatrix.R, etc: new source files
1016            * man/nsparseMatrix-classes.Rd, etc: new help files
1017            * tests/: adaptions
1018            * src/chm_common.c (chm_dense_to_SEXP): and others:
1019                    new 'Rkind' argument: "l*" and "d*" both use CHOLMOD_REAL
1020            * src/Csparse.c, etc: ditto
1021    
1022    2006-09-11  Douglas Bates  <bates@R-project.org>
1023    
1024            * src/Mutils.[ch],init.c inst/include/*.h: Move the
1025            alloc_d**Matrix functions to the lme4 package.
1026    
1027    2006-09-09  Douglas Bates  <bates@R-project.org>
1028    
1029            * src/dsCMatrix.c (dsCMatrix_Cholesky): igoring LDL = FALSE now
1030            fixed
1031    
1032    2006-09-09  Martin Maechler  <maechler@stat.math.ethz.ch>
1033    
1034            * R/lMatrix.R: new
1035    
1036            * R/sparseMatrix.R (Tsp2grNEL): do not yet use graph::foo()
1037    
1038            * R/dgeMatrix.R: do not define tcrossprod() methods for "matrix"
1039            * man/tcrossprod.Rd: ditto
1040    
1041    2006-09-08  Douglas Bates  <bates@stat.wisc.edu>
1042    
1043            * inst/include/Matrix_stubs.c,Matrix.h: Add declarations and stubs
1044            for exported functions
1045            * src/Makefile, src/CHOLMOD/Lib/Makefile, src/Metis,CAMD,CCOLAMD:
1046            Remove partitioning algorithms for sparse matrix reordering.  The
1047            copyright on the Metis code was problematic and the methods were
1048            rarely used.
1049            * src/triplet_to_col.[ch],MMHB.[ch]: Remove triplet_to_col.  Such
1050            operations are now done entirely in CHOLMOD code.
1051    
1052    2006-09-06  Douglas Bates  <bates@R-project.org>
1053    
1054            * src/Mutils.h: Remove functions that are no longer used.
1055    
1056    2006-09-04  Douglas Bates  <bates@R-project.org>
1057    
1058            * src/dtCMatrix.c (dtCMatrix_validate): rename functions.
1059            * src/DEPS.mkf: update
1060    
1061    2006-09-02  Martin Maechler  <maechler@stat.math.ethz.ch>
1062    
1063            * created branches/Matrix-for-R-2.3.x;  on trunk: do
1064            * DESCRIPTION (Version): 0.9975-0
1065            (Depends): R (>= 2.4.0)
1066    
1067    2006-09-01  Douglas Bates  <bates@R-project.org>
1068    
1069            * R/sparseMatrix.R: Added direct method to CsparseMatrix from graphNEL
1070    
1071    2006-09-01  Martin Maechler  <maechler@stat.math.ethz.ch>
1072    
1073            * R/sparseMatrix.R: add coercion from "ANY" to "sparseMatrix"
1074            * R/denseMatrix.R:  add coercion from "ANY" to "denseMatrix"
1075    
1076            * R/Matrix.R ([): use nargs() to disambiguate M[i] and M[i,]
1077    
1078    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
1079    
1080            * R/sparseMatrix.R (Arith): moved Arith group method one-level up
1081            from "dsparse" to "sparse" and now go via "Csparse" instead of "dgC"
1082            * R/dsparseMatrix.R: ditto
1083            * R/Csparse.R: ditto
1084    
1085    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
1086    
1087            * R/dMatrix.R (Compare): improve availability of "<", etc
1088            * R/Auxiliaries.R (asTuniq): new; also make use of R 2.4.x print(*,max)
1089    
1090    2006-08-30  Martin Maechler  <maechler@stat.math.ethz.ch>
1091    
1092            * R/dgCMatrix.R: aargh: "Arith(<dgC>, numeric)" was wrong because
1093            of a 0-index which was used as 1-index (..hmm)
1094    
1095            * R/sparseMatrix.R (prSpMatrix): fix printing an all-0 sparse Matrix
1096    
1097            * R/Auxiliaries.R (all0, is0): for 0-testing in presence of NA's
1098            * R/Auxiliaries.R (isTriMat): use all0() for 0-testing.
1099            (.is.diagonal): ditto
1100    
1101            * R/lgTMatrix.R: as("matrix", "lgTMatrix"): warn about NA's
1102    
1103            * R/Matrix.R (Matrix): also work for NA data
1104    
1105    2006-08-28  Martin Maechler  <maechler@stat.math.ethz.ch>
1106    
1107            * R/Matrix.R (Matrix): + 'forceCheck' argument; dimnames setting
1108            in all cases.
1109    
1110    2006-08-27  Douglas Bates  <bates@R-project.org>
1111    
1112            * src/dense.[ch],init.c, R/ddenseMatrix.R, man/band.Rd
1113            (ddense_band): Added triu, tril and band for ddenseMatrix objects.
1114    
1115    2006-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>
1116    
1117            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): added all subclasses of
1118            subclasses of "ddenseMatrix"
1119            * src/init.c et al: outcomment dtrM*_as_dge* and dsyM*_as_dge*_
1120            * R/ddenseMatrix.R et al: setAs("ddenseMatrix", "dgeMatrix", ..)
1121            instead of half dozen specialized ones.
1122    
1123    2006-08-25  Douglas Bates  <bates@R-project.org>
1124    
1125            * R/lmer.R (qqmath method): Bug fix provided by Emmanuel Tillard
1126            <tillard@cirad.fr> - ordering standard errors to match effects.
1127    
1128    2006-08-24  Douglas Bates  <bates@R-project.org>
1129    
1130            * src/lsCMatrix.c (lsCMatrix_trans): Remove lsCMatrix_chol based
1131            on R_ldl.
1132            * R/lCholCMatrix.R,
1133            src/[dl]CholCMatrix.[ch],R_ldl.[ch],Metis_utils.[ch]: removed
1134            * src/dsCMatrix.c (dsCMatrix_to_dgTMatrix): use CHOLMOD
1135            * many files in ./R and ./src: Use more general version of
1136            dup_mMatrix_as_dgeMatrix to simplify method definitions.
1137            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): Add ddiMatrix,
1138            dtpMatrix, dspMatrix and dppMatrix conversions.
1139    
1140    
1141    2006-08-23  Douglas Bates  <bates@R-project.org>
1142    
1143            * R/AllClass.R,lCholCMatrix.R,src/SOURCES_C.mkf,init.c,NAMESPACE:
1144            Remove classes lCholCMatrix and dCholCMatrix based on R_ldl code.
1145            * src/dgeMatrix.c: Ensure 'factors' slot exists in result of
1146            dgeMatrix_crossprod (may need to do this in other places).
1147            * R/AllGeneric.R,dsCMatrix.R, src/dscMatrix.[ch]: Add Cholesky
1148            generic and method for dsCMatrix.  Use CHOLMOD for chol().
1149    
1150    2006-08-22  Douglas Bates  <bates@R-project.org>
1151    
1152            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): updated for general
1153            types of classed Matrices, matrices or numeric or logical vectors.
1154            * src/init.c: register dup_mMatrix_as_dgeMatrix for coercions.
1155            * src/chm_common.c,Mutils.h (as_cholmod_factor): Move check_class
1156            to Mutils.h (as an inline) and change name to Matrix_check_class;
1157            fixes in as_cholmod_factor and chm_factor_to_SEXP.
1158            * src/dsCMatrix.[ch]: Use CHOLMOD for dsCMatrix_chol and
1159            dsCMatrix_matrix_solve.  Comment out vestigial functions.
1160            * src/Csparse.c: use diag_P and uplo_P macros.
1161    
1162    2006-08-21  Douglas Bates  <bates@R-project.org>
1163    
1164            * src/lmer.c (internal_mer_RZXinv): Fix memory leak caught by
1165            valgrind.
1166            * tests/matprod.R: Add tests to verify that 'solve' and '%*%' are
1167            inverses.
1168            * src/sparseQR.c (sparseQR_validate): add new validation test, fix
1169            -Wall warnings.
1170            * src/dppMatrix.c,dtrMatrix.c,dgCMatrix.c,dgeMatrix.c,dspMatrix.c:
1171            Use dup_mMatrix_as_dgeMatrix.
1172    
1173    2006-08-20  Douglas Bates  <bates@R-project.org>
1174    
1175            * src/sparseQR.c: Fix thinko in sparseQR_resid_fitted.
1176            * tests/sparseQR.R: Added
1177            * man/sparseQR-class.Rd: Document methods for qr.* generics
1178            * R/sparseQR.R: Return correct # of coefs; fix cut-and-paste errors
1179    
1180    2006-08-19  Douglas Bates  <bates@R-project.org>
1181    
1182            * NAMESPACE, R/sparseQR.R, src/init.c,sparseQR.[ch],SOURCES_C.mkf:
1183            Added methods for sparseQR for qr.qy, qr.qty, qr.coef, qr.resid
1184            and qr.fitted.
1185            * src/Mutils.[ch]: Added dup_mMatrix_as_dgeMatrix utility
1186            * src/dgCMatrix.c: Check for ordering before storing q in dgCMatrix_QR
1187    
1188    2006-08-18  Martin Maechler  <maechler@stat.math.ethz.ch>
1189    
1190            * R/AllGeneric.R: add "qr" and "chol" generics; via 'trick' since
1191            the base version has no "..." argument.
1192    
1193            * R/sparseMatrix.R (prSpMatrix): fix the triangular unit diagonal case.
1194    
1195            * R/Matrix.R: define and
1196            * NAMESPACE: export as.numeric() and as.logical() methods.
1197                    Let's hope these do not badly slow down something...
1198            Finally export the zapsmall() method.
1199    
1200    2006-08-17  Douglas Bates  <bates@R-project.org>
1201    
1202            * src/dgCMatrix.[ch] (dgCMatrix_matrix_solve), src/init.c,
1203            R/dgCMatrix.R: solve methods for dgCMatrix and dense RHS.
1204            * src/dtCMatrix.c :Remove code that is no longer used
1205            * R/dtCMatrix.R: Use C code for diagU2N in CsparseMatrix classes
1206    
1207    2006-08-14  Douglas Bates  <bates@R-project.org>
1208    
1209            * src/Csparse.[ch],init.c (Csparse_to_logical): Added utilities
1210            Csparse_to_logical and Csparse_symmetric_to_general.
1211            * R/dgCMatrix.R,dsCMatrix.R,Csparse.R : Consolidate general
1212            coercion methods between CsparseMatrix and TsparseMatrix.
1213    
1214    2006-08-14  Douglas Bates  <bates@R-project.org>
1215    
1216            * R/dtCMatrix.R,dgCMatrix.R,Csparse.R src/init.c,dgCMatrix.[ch],
1217            Csparse.[ch],chm_common.c,dense.c : Use CHOLMOD code and methods
1218            for CsparseMatrix, TsparseMatrix, denseMatrix or matrix when
1219            possible.
1220    
1221    2006-08-12  Douglas Bates  <bates@R-project.org>
1222    
1223            * src/chm_common.[ch],Csparse.[ch],Tsparse.[ch],CHMfactor.c,dtTMatrix.c,
1224              dgTMatrix.c,dgCMatrix.c,dsCMatrix.c,dtTMatrix.c, R/dsTMatrix.R,
1225              Tsparse.R,Csparse.R,dgTMatrix.R,dsCMatrix.R,lsCMatrix.R:
1226              generalize conversions between TsparseMatrix, CsparseMatrix,
1227              denseMatrix and matrix.  Preserve triangularity property and
1228              propagate Dimnames in the easy cases.
1229    
1230    2006-08-10  Douglas Bates  <bates@R-project.org>
1231    
1232            * src/lmer.c: adjust checks in glmer_init for S4SXP
1233            * tests/validObj.R: check of all(eq) should be all(eq@x) - worked
1234            before S4SXP but for the wrong reasons.
1235    
1236    2006-08-08  Douglas Bates  <bates@R-project.org>
1237    
1238            * src/Csparse.c (Csparse_crossprod): tcrossprod result has stype = -1.
1239            Later modified to return the upper triangle only.
1240            * R/dgTMatrix.R: Remove vestigial crossprod and tcrossprod methods.
1241    
1242    2006-08-07  Douglas Bates  <bates@R-project.org>
1243    
1244            * src/Csparse.c (Csparse_crossprod): Set stype on result to avoid
1245            R-level conversion to a sparse symmetric class.
1246            * R/Tsparse.R,R/Csparse.R (crossprod and tcrossprod methods):
1247            Remove conversion to sparse symmetric classes (now done in C code).
1248    
1249    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
1250    
1251            * R/dgCMatrix.R: disable old crossprod and tcrossprod methods
1252            * man/band.Rd:  adapt the \dontshow{} unit test.
1253    
1254    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
1255    
1256            * DESCRIPTION (Version): 0.995-14  for CRAN
1257    
1258            * tests/other-pkgs.R: oops: library(Matrix) outside *if* !
1259    
1260            * R/sparseMatrix.R (Tsp2grNEL): fixed Tsparse -> graph coercion
1261            * tests/other-pkgs.R:  more checks, sparseMatrix -> graph
1262    
1263            * R/Auxiliaries.R (as_Tsparse, as_Rsparse): new
1264            * R/Tsparse.R (tril, triu, band): methods
1265            * R/dgRMatrix.R (tril, ...):    ditto
1266            * man/band.Rd:                  ditto
1267    
1268    2006-08-04  Martin Maechler  <maechler@stat.math.ethz.ch>
1269    
1270            * R/Matrix.R (head, tail): directly use utils:::head.matrix
1271                    to be up-to-date automatically.
1272    
1273    2006-08-03  Martin Maechler  <maechler@stat.math.ethz.ch>
1274    
1275            * DESCRIPTION (Version): 0.995-13 to be released to CRAN
1276    
1277            * DESCRIPTION (Lazydata): no, instead of 'yes' because it fails for:
1278            * data/CAex.R, inst/external/CAex_slots.rda: replacing data/CAex.rda
1279            * data/KNex.R, inst/external/KNex_slots.rda: replacing data/KNex.rda
1280            such that the S4 objects are always created by the current version
1281            of R and 'Matrix' class definitions.
1282    
1283    2006-08-01  Douglas Bates  <bates@R-project.org>
1284    
1285            * R/lmer.R (LMEoptimize method), tests/lmer.R,
1286            inst/external/test3comp.rda: Added warnings for convergence on
1287            boundary and test cases.
1288    
1289            * src/lmer.c (mer_postVar): Modified to return the variances that
1290            are marginal to the fixed effects, not conditional on them (which
1291            is what the bVar slot contents represent).
1292    
1293    2006-07-31  Douglas Bates  <bates@R-project.org>
1294    
1295            * NAMESPACE, src/lmer.c, R/lmer.R (hatTrace):  Add the hatTrace
1296            function which calls the C function mer_hat_trace2.
1297    
1298            * man/ranef.Rd: Include description of "postVar" argument and
1299            producing a caterpillar plot.
1300    
1301    2006-07-31  Martin Maechler  <maechler@stat.math.ethz.ch>
1302    
1303            * NAMESPACE:    change  "correlation" to "corMatrix"
1304            * R/AllClass.R: to avoid clash with S3 class in 'nlme'.
1305            * R/dpoMatrix.R: ditto
1306            * R/lmer.R:      ditto
1307    
1308    2006-07-28  Douglas Bates  <bates@R-project.org>
1309    
1310            * src/lmer.c (internal_mer_RZXinv): Split the calculation of the
1311            RZXinv slot's contents into a separate internal function that can
1312            be used in mer_hat_trace.
1313    
1314    2006-07-22  Martin Maechler  <maechler@stat.math.ethz.ch>
1315    
1316            * R/Matrix.R: Coercions "Matrix" -> (sparse|dense)Matrix
1317            via new smart
1318            * R/Auxiliaries.R (as_Csparse, as_dense, .M.shapse): new
1319            utility functions.
1320    
1321    
1322    2006-07-21  Martin Maechler  <maechler@stat.math.ethz.ch>
1323    
1324            * R/Csparse.R (tril, triu, band): do return *triangular* classed
1325            matrices when appropriate; band() even symmetric ones.
1326            (replCmat): extend to potentially all "CsparseMatrix"
1327            * R/Tsparse.R (replTmat): extend to all "TsparseMatrix"; hence
1328            allow subassignment for special sparse matrices.
1329    
1330            * R/Auxiliaries.R (as_geClass): factor out the  .M.kind() functionality
1331    
1332            * src/lmer.c (mer_MCMCsamp, glmer_MCMCsamp): new 'verbose'
1333            argument; in glmer_*(): print only if(verbose).
1334    
1335            speed-optimize a few places by moving REAL(.) out of loops.
1336    
1337            * src/lmer.h, src/init.h, R/lmer.R:  related to above.
1338    
1339    2006-07-20  Martin Maechler  <maechler@stat.math.ethz.ch>
1340    
1341            * R/Matrix.R("["): disable ("Matrix", i = "logical", j = "missing"),
1342                    since that wrongly triggers also for M[ logi , ]
1343    
1344            * R/denseMatrix.R: "[" methods now also work e.g. when indexing
1345            a symmetric matrix that results in a non-symmetric one.
1346            * R/Auxiliaries.R (as_geClass): new function used in "[" above.
1347    
1348            * R/dMatrix.R: make round(M) work as round(M, 0)
1349    
1350            * R/dgTMatrix.R (image): coordinate system and axis now use
1351            1-based indices, not 0-based ones.
1352    
1353            * R/Tsparse.R (.ind.prep for "["): get rid of max(<empty>) warning.
1354            * tests/indexing.R: test it.
1355    
1356            * NAMESPACE: export isSymmetric(); has been a generic in "base" for a while;
1357            * man/isSymmetric-methods.Rd: and document it.
1358    
1359            * R/SparseM-conv.R: added coercion methods for some 'SparseM' matrices.
1360            * man/SparseM-conv.Rd: docu them
1361    
1362            * tests/other-pkgs.R: renamed from tests/graph.R and add example
1363                    for 'SparseM' conversions
1364    
1365    2006-07-17  Douglas Bates  <Douglas.Bates@R-project.org>
1366    
1367            * R/Matrix.R (head): added head() and tail() methods.
1368    
1369    2006-07-17  Martin Maechler  <maechler@stat.math.ethz.ch>
1370    
1371            * DESCRIPTION (Version): 0.995-12 released to CRAN
1372    
1373    2006-07-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1374    
1375            * tests/simple.R: add check for correct dsT -> dgT coercion;
1376                    add check for correct printing of symmetric sparse matrices.
1377    
1378            * R/Auxiliaries.R (non0ind): return *all* non-0 entry indices also
1379            for sparse symmetric matrices.
1380    
1381            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): do not copy the
1382            diagonal twice.
1383    
1384    2006-07-11  Douglas Bates  <Douglas.Bates@R-project.org>
1385    
1386            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): Fix a case of INTEGER
1387            being applied to the x slot (detected by Brian Ripley).
1388    
1389    2006-07-10  Martin Maechler  <maechler@stat.math.ethz.ch>
1390    
1391            * src/dgCMatrix.c (dgCMatrix_validate): 'p' slot must have correct length.
1392    
1393            * R/Auxiliaries.R (isTriC): fix buglet (we were 1-based!)
1394    
1395    2006-07-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1396    
1397            * src/lgCMatrix.c (lgCMatrix_diag): new function
1398            * R/lgCMatrix.R (diag): for new method
1399    
1400            * R/AllClass.R (TsparseMatrix): do use Tsparse_validate
1401                 ==> construction of illegal "*gTMatrix" via new() should
1402                 now be much less easy:
1403            * tests/Class+Meth.R: assertError() for some illegal "dgT*"
1404    
1405            * R/Matrix.R (Matrix): Matrix(0, nrow,ncol) now "goes sparse"
1406                    directly.
1407            * man/Matrix.Rd: documents it.
1408    
1409    2006-07-06  Douglas Bates  <bates@R-project.org>
1410    
1411            * src/pedigree.c (pedigree_inbreeding): Correction in
1412            initialization.  This function is not currently being used and is
1413            not fully tested.
1414    
1415            * NAMESPACE, R/{AllClass.R,lmer.R}, src/{init.c,lmer.c}:
1416            Introduced the glmer class.  Added code for mcmcmsamp on glmer
1417            objects.  Modified validity check on pedigree objects to account
1418            for nonparallel patterns of missingness of parents.
1419    
1420            * man/{lmer-class.Rd,mcmcsamp.Rd}: Update documentation for glmer
1421            class.
1422    
1423    2006-07-01  Martin Maechler  <maechler@stat.math.ethz.ch>
1424    
1425            * R/pMatrix.R: coercion pMatrix -> Tsparse
1426    
1427    2006-06-12  Douglas Bates  <bates@R-project.org>
1428    
1429            * DESCRIPTION (Version): 0.995-11 released to CRAN
1430    
1431            * R/lmer.R (mcmcsamp method): Corrected arrangments of names on
1432            the output from mcmcsamp.
1433    
1434    2006-06-10  Douglas Bates  <bates@R-project.org>
1435    
1436            * R/lmer.R (simulestimate): added C code for calculating the trace
1437            of the hat matrix.
1438    
1439    2006-06-09  Martin Maechler  <maechler@stat.math.ethz.ch>
1440    
1441            * R/diagMatrix.R (setAs): define coercion methods to sparse matrix
1442            classes.
1443            * R/sparseMatrix.R etc: multiplication of diagonal and sparse
1444    
1445    2006-06-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1446    
1447            * R/dgTMatrix.R (colSums): etc. All four of
1448            colSums(), rowSums(), colMeans(), rowMeans() now should work for
1449            all "Matrices".
1450    
1451    2006-06-01  Douglas Bates  <bates@stat.wisc.edu>
1452    
1453            * R/lmer.R (panel.ci): Add a reference line at zero and a
1454            background grid to the qqmath plot of ranef.lmer.
1455    
1456    2006-05-30  Douglas Bates  <bates@stat.wisc.edu>
1457    
1458            * R/lmer.R (expandSlash): Functions (non-exported) to allow nested
1459            grouping factors to be specified in the formula as (1|foo/bar).
1460    
1461    2006-05-27  Douglas Bates  <bates@stat.wisc.edu>
1462    
1463            * R/lmer.R (findbars and others): Change check of is.numeric to
1464            !is.language to resolve the bug reported by Jacob Wegelin.
1465    
1466            * src/pedigree.c (pedigree_inbreeding): Initial implementation of
1467            code to evaluate inbreeding coefficients without calculating T,
1468            based on code in Sargolzaei and Iwaisaki's paper.
1469    
1470    2006-05-27  Douglas Bates  <bates@stat.wisc.edu>
1471    
1472            * R/{lmer.R,AllGeneric.R}, src/{init.c,lmer.[ch]}: Added local
1473            generic and mer methods for isNested and denomDF. This denomDF was
1474            an attempt to emulate that in lme but I don't think that makes
1475            sense.  Use the trace of the hat matrix instead.
1476    
1477    2006-05-17  Martin Maechler  <maechler@stat.math.ethz.ch>
1478    
1479            * R/sparseMatrix.R: Matrix <-> graph methods: can no longer use
1480            the C code depending on a slot structure that's no longer valid.
1481            * src/dgTMatrix.c: ditto (also: src/init.c src/dgTMatrix.h)
1482    
1483    
1484    2006-05-17  Douglas Bates  <bates@stat.wisc.edu>
1485    
1486            *  R/{AllGeneric.R,Csparse.R},man/band.Rd,NAMESPACE: changed name
1487            of lowerTriMatrix generic and methods to tril (also upper to triu)
1488            and added a general band extractor.
1489    
1490    2006-05-16  Douglas Bates  <bates@stat.wisc.edu>
1491    
1492            * R/pedigree.R (pedigree): Replace sire and dam values outside the
1493            allowable range with NAs. Added a corresponding check in the
1494            validity check for the pedigree class.
1495    
1496            * R/[CT]sparse.R ([t]crossprod): The result of single-argument
1497            crossprod methods now inherits from symmetricMatrix.
1498    
1499    2006-05-15  Douglas Bates  <bates@stat.wisc.edu>
1500    
1501            * R/AllGeneric.R (lowerTriMatrix): Added (but did not export)
1502            generics lowerTriMatrix and upperTriMatrix along with methods for
1503            the Csparse virtual class.  Also added a C function Csparse_band
1504            that implements these methods by calling cholmod_band.
1505    
1506    2006-05-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1507    
1508            * R/Tsparse.R ("["): column or row subsetting; @Dimnames[k] got
1509            erased when it was NULL.  This led to invalid subselections!
1510    
1511    2006-04-25  Douglas Bates  <bates@stat.wisc.edu>
1512    
1513            * R/dtCMatrix.R: avoid coercion of dtCMatrix object to dgCMatrix
1514            in method for "t" so as not to lose the unit diagonal property.
1515    
1516    2006-04-19  Douglas Bates  <bates@stat.wisc.edu>
1517    
1518            * R/lmer.R, R/AllGeneric.R, NAMESPACE: Remove the postVar generic
1519            and methods.  This is now an option to the ranef method for the
1520            mer class.
1521    
1522            * src/cs_utils.c: Ensure that the nz component is -1 for a
1523            compressed column-oriented matrix.  Minor formatting cleanup.
1524    
1525            * man/lmer-class.Rd: Document the qqmath method for ranef.lmer
1526            objects.
1527    
1528    2006-04-19  Martin Maechler  <maechler@stat.math.ethz.ch>
1529    
1530            * R/Auxiliaries.R (diagU2N): new for the solve() methods in
1531            * R/dtCMatrix.R: where dgC -> dgT coercion now preserves diag = "U".
1532    
1533    2006-04-15  Douglas Bates  <bates@stat.wisc.edu>
1534    
1535            * src/cs.[ch],src/cs_utils.[ch] : Added Tim Davis' CSparse library
1536            in cs.[ch] and utilities to interface to that code in cs_utils.[ch].
1537    
1538            * R/dtCMatrix.R, src/dtCMatrix.[ch] : CSparse-based solve methods
1539            for the dtCMatrix class.
1540    
1541    2006-04-12  Douglas Bates  <bates@stat.wisc.edu>
1542    
1543            * R/pedigree.R, R/AllClass.R, NAMESPACE: added a pedigree class
1544            and methods for it.
1545    
1546    2006-04-12  Martin Maechler  <maechler@stat.math.ethz.ch>
1547    
1548            * R/dgCMatrix.R: add  storage.mode(.) <- "double" for "matrix"
1549            arguments, such that M %*% 1:6 now works
1550            * Tests/matprod.R: test the above
1551    
1552    2006-04-03  Douglas Bates  <bates@stat.wisc.edu>
1553    
1554            * R/lmer.R (qqmath,ranef.lmer-method): added a qqmath method for
1555            the ranef.lmer class.
1556    
1557            * R/AllClass.R, NAMESPACE, R/lmer.R: Added a postVar generic and
1558            methods to extract the posterior variances from the bVar slot.
1559    
1560    2006-03-30  Martin Maechler  <maechler@stat.math.ethz.ch>
1561    
1562            * R/dtCMatrix.R: allow coercion from  dgC* to triangular (dtC*)
1563            * R/dsCMatrix.R: and symmetric (dsC*) 'Csparse' matrices.
1564    
1565            * R/Tsparse.R: Tsparse* -> Csparse* coercion now works and is tested in
1566            * tests/simple: (extended)
1567    
1568            * R/sparseMatrix.R (isTriangular): now using much improved
1569            * R/Auxiliaries.R (isTriC): new triangularity check for *CMatrix
1570    
1571    2006-03-23  Douglas Bates  <bates@stat.wisc.edu>
1572    
1573            * src/dsyMatrix.c (dsyMatrix_as_dspMatrix): Propagate DimNames
1574            (problem report from Franklin Parlamis).  This should be done
1575            generally.
1576    
1577    2006-03-21  Douglas Bates  <bates@stat.wisc.edu>
1578    
1579            * R/AllClass.R,lmer.R: Change the name of the lmer.ranef class to
1580            ranef.lmer (like summary.lmer).  Add the coef.lmer class and
1581            update the plot methods.
1582    
1583    2006-03-20  Douglas Bates  <bates@stat.wisc.edu>
1584    
1585            * R/lmer.R (resid and ranef methods):  Added methods for the
1586            "residuals" and "resid" generic but only for linear mixed model
1587            fits.  Changed the ranef method to return a list of data frames so
1588            that the plot methods now work.
1589    
1590    2006-03-16  Douglas Bates  <bates@bates2>
1591    
1592            * src/dpoMatrix.c (dpoMatrix_chol): Require n > 0 in call to
1593            dpotrf - otherwise the BLAS on Mac OS X complains and quits.
1594    
1595            * DESCRIPTION (Date): New release
1596    
1597    2006-03-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1598    
1599            * DESCRIPTION (Version): 0.995-6  -- to be released to CRAN
1600    
1601            * data/KNex.rda: replacing 'mm' and 'y' by KNex <- list(mm=mm, y=y)
1602            * man/KNex.Rd: and other help files
1603            * tests/*.R: several ones needed adaption
1604            * inst/doc/Comparisons.Rnw: ditto
1605    
1606    2006-03-11  Martin Maechler  <maechler@stat.math.ethz.ch>
1607    
1608            * R/dgCMatrix.R (replCmat): "[<-" methods for dgCMatrix
1609    
1610            * tests/indexing.R: tests for new [<- methods for sparse matrices.
1611    
1612    2006-03-10  Martin Maechler  <maechler@stat.math.ethz.ch>
1613    
1614            * R/dgTMatrix.R (replTmat): "[<-" methods for dgTMatrix
1615    
1616            * R/Tsparse.R (.ind.prep): fix out-of-range indexing
1617    
1618    2006-03-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1619    
1620            * R/dMatrix.R: enable things like  M [ M < 10 ]
1621            * R/dgeMatrix.R: implement it
1622    
1623    2006-03-06  Martin Maechler  <maechler@stat.math.ethz.ch>
1624    
1625            * R/AllClass.R: define "summary.mer" and "*.lmer"
1626            * R/lmer.R (summary): summary(<mer>) computes & returns the above;
1627            * R/lmer.R (show): now works with summary()
1628    
1629    2006-03-04  Martin Maechler  <maechler@stat.math.ethz.ch>
1630    
1631            * R/dgCMatrix.R: finally direct "Arith"  dgC o dgC
1632            * R/Auxiliaries.R (WhichintersectInd): and other utilities to
1633                    support the above
1634    
1635  2006-02-07  Douglas Bates  <bates@stat.wisc.edu>  2006-02-07  Douglas Bates  <bates@stat.wisc.edu>
1636    
1637          * R/lmer.R (lmer): fix initial values of offset and weights for glm.fit.          * R/lmer.R (lmer): fix initial values of offset and weights for glm.fit.
# Line 171  Line 1805 
1805  2005-08-26  Martin Maechler  <maechler@stat.math.ethz.ch>  2005-08-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1806    
1807          * R/Matrix.R:  added first "[<-" methods; not yet functional          * R/Matrix.R:  added first "[<-" methods; not yet functional
1808          * R/denseMatrix.R: dito          * R/denseMatrix.R: ditto
1809          * man/Subassign-methods.Rd: new help file for these          * man/Subassign-methods.Rd: new help file for these
1810    
1811  2005-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>  2005-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>

Legend:
Removed from v.1213  
changed lines
  Added in v.2020

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