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

Legend:
Removed from v.350  
changed lines
  Added in v.1863

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