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

Legend:
Removed from v.687  
changed lines
  Added in v.1870

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