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

Legend:
Removed from v.49  
changed lines
  Added in v.2051

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