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

Legend:
Removed from v.726  
changed lines
  Added in v.1768

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