SCM

SCM Repository

[matrix] Diff of /pkg/ChangeLog
ViewVC logotype

Diff of /pkg/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

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

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

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