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

Legend:
Removed from v.1288  
changed lines
  Added in v.2024

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