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 1288, Thu Jun 1 20:41:20 2006 UTC revision 1902, Sat Jun 16 15:54:54 2007 UTC
# Line 1  Line 1 
1    2007-06-16 15:52  Douglas Bates <bates@stat.wisc.edu>
2    
3            * [r4466] R/dgCMatrix.R, src/dgCMatrix.c, src/dgCMatrix.h, src/init.c:
4              added dgCMatrix_colSums for [col,row][Sums,Means]
5    
6    2007-06-15 23:15  Douglas Bates <bates@stat.wisc.edu>
7    
8            * [r4460] R/sparseMatrix.R, man/dgCMatrix-class.Rd, src/dgCMatrix.c,
9              src/dgCMatrix.h, src/init.c: added lm.fit.sparse (unexported),
10              coercion of "factor" to "dgCMatrix" and dgCMatrix_cholsol
11            * [r4461] R/AllClass.R, man/sparseMatrix-class.Rd: draft "indicators"
12              class
13            * [r4463] R/sparseMatrix.R, man/dgCMatrix-class.Rd,
14              man/sparseMatrix-class.Rd: Don't need an "indicators" class - use the
15              row names to store the levels - duh!  Added an example.
16    
17    2007-06-14  Martin Maechler  <maechler@stat.math.ethz.ch>
18    
19            * src/Csparse.c (Csparse_validate): check for *repeated* entries
20            thanks to example from Christian Buchta; with a test here:
21            * tests/simple.R:
22    
23    2007-06-07  Martin Maechler  <maechler@stat.math.ethz.ch>
24    
25            * R/Auxiliaries.R (callGeneric): another fix, needed for some cases
26            of colSums(*, sparseResult = TRUE)
27    
28    2007-06-06  Martin Maechler  <maechler@stat.math.ethz.ch>
29    
30            * R/lsparseMatrix.R, R/ldenseMatrix.R (all, any): change default to
31            'na.rm = FALSE' as "everywhere" else in R.
32    
33    2007-06-05 Douglas Bates <bates@stat.wisc.edu>
34    
35            * [r4421] src/CSparse_install.sh: Modify for new organization of
36              CSparse package
37            * [r4425] src/UFsparse_download.sh: Update to version 3.0.0 of
38              SuiteSparse
39            * [r4426] src/Makefile: add ./UFconfig to the include path for
40              compilation
41            * [r4427] src/cs.[ch]: update to CSparse version 2.2.0
42            * [r4428] inst/doc/UFsparse/* src/{AMD,CHOLMOD,COLAMD}/*
43              src/UFconfig/UFconfig.h: Update to version 3.0.0 of SuiteSparse
44    
45    2007-06-05  Martin Maechler  <maechler@stat.math.ethz.ch>
46    
47            * R/Auxiliaries.R (emptyColnames): + argument msg.if.not.empty, used in
48            * R/sparseMatrix.R (prSpMatrix): now gives a message about
49            suppressed column names.
50    
51    2007-06-04 17:13  Douglas Bates <bates@stat.wisc.edu>
52    
53            * [r4418] src/Csparse.c, src/HBMM.c, src/Mutils.c, src/Mutils.h,
54              src/Tsparse.c, src/chm_common.c, src/chm_common.h, src/dgCMatrix.c,
55              src/dgeMatrix.c, src/dpoMatrix.c, src/dpoMatrix.h, src/dppMatrix.c,
56              src/dppMatrix.h, src/dsCMatrix.c, src/dspMatrix.c, src/dspMatrix.h,
57              src/dsyMatrix.c, src/dsyMatrix.h, src/dtpMatrix.c, src/dtrMatrix.c:
58              Remove warnings after change to const char* CHAR
59    
60    2007-06-04 17:11  Douglas Bates <bates@stat.wisc.edu>
61    
62            * [r4417] inst/include/Matrix_stubs.c, inst/include/cholmod.h: Corrected
63              type of M_cholmod_ssmult
64    
65    2007-06-03 14:42  Douglas Bates <bates@stat.wisc.edu>
66    
67            * [r4412] inst/include/Matrix_stubs.c, inst/include/cholmod.h,
68              src/init.c: Yet another cholmod export - cholmod_ssmult
69    
70    2007-05-23  Martin Maechler  <maechler@stat.math.ethz.ch>
71    
72            * NAMESPACE: exported drop0(), since
73            * man/drop0.Rd: I have seen several cases, I really wanted to use
74            it, so our users may want too.
75    
76    2007-05-22  Martin Maechler  <maechler@stat.math.ethz.ch>
77    
78            * man/colSums.Rd: separately document colSums() etc, since these
79            have the extra argument 'sparseResult'.
80    
81    2007-05-21  Martin Maechler  <maechler@stat.math.ethz.ch>
82    
83            * R/sparseMatrix.R (spMatrix): utility (T)sparse Matrix constructor;
84            * man/spMatrix.Rd: docu., including examples
85    
86            * R/Auxiliaries.R (sp.colMeans): etc, using a patched callGeneric(),
87            in order to make colMeans() etc fast *and* correct.
88            * R/sparseVector.R (replSPvec): "[<-" functionality for
89            sparseVectors; tested in
90            * tests/simple.R:
91    
92    2007-05-19  Martin Maechler  <maechler@stat.math.ethz.ch>
93    
94            * R/sparseMatrix.R (print.sparseSummary): and summary() method for
95            (very) sparse Matrices; output similar to Matlab's print().
96    
97    2007-05-17  Douglas Bates  <bates@stat.wisc.edu>
98    
99            * src/HBMM.c (Matrix_writeMatrixMarket): Write 1-based, not
100            0-based, indices (Jose Quesada <quesada@gmail.com>).
101    
102    2007-05-16  Douglas Bates  <bates@stat.wisc.edu>
103    
104            * R/CHMfactor.R: Added solve methods for a CHMfactor object.
105    
106    2007-05-16  Martin Maechler  <maechler@stat.math.ethz.ch>
107    
108            * R/Auxiliaries.R (sparsapply): new utility, much faster than
109            tapply1() for large sparse matrices.
110    
111    2007-05-15  Martin Maechler  <maechler@stat.math.ethz.ch>
112    
113            * R/Matrix.R (dim<-): reshape now via sparseVector.
114    
115            * R/sparseVector.R: methods and function for
116            * R/AllClass.R: new "sparseVector" class and daughters.
117            * NAMESPACE: export new classes
118    
119    2007-05-14  Martin Maechler  <maechler@stat.math.ethz.ch>
120    
121            * DESCRIPTION (Version): 0.99875-1
122            * src/Makefile.win: also remove Lapack code from here (cf. 04-25).
123    
124    2007-05-11  Martin Maechler  <maechler@stat.math.ethz.ch>
125    
126            * R/Tsparse.R ([, Tsparse): fix last case: *duplicated*, symmetric
127            indexing
128            * tests/indexing.R: test set for that.
129    
130    2007-05-08  Martin Maechler  <maechler@stat.math.ethz.ch>
131    
132            * R/Tsparse.R (replTmat): fix the case of *duplicated* index
133            entries.
134            * tests/indexing.R(out): add regression test for it
135    
136    2007-04-30  Martin Maechler  <maechler@stat.math.ethz.ch>
137    
138            * R/(l(dense|sparse))?Matrix.R (!): use 'x', not 'e1' as argument
139            name for "!" method definitions.
140    
141    2007-04-26  Martin Maechler  <maechler@stat.math.ethz.ch>
142    
143            * R/Tsparse.R (intI): new utility, used for "[" :
144                    Cleanup up there, and fixes for duplicated indices - more TODO!
145    
146            * tests/indexing.R(out): more tests
147    
148    2007-04-25  Douglas Bates  <bates@stat.wisc.edu>
149    
150            * DESCRIPTION,src/Makefile: require R>= 2.5.0 and remove Lapack
151            code that is now part of the R Lapack library.
152    
153            * src/init.c,inst/include/{Matrix_stubs.c,cholmod.h}:export
154            cholmod_factorize_p (used in lme4 for GLMMs and NLMMs).
155    
156    2007-04-21  Martin Maechler  <maechler@stat.math.ethz.ch>
157    
158            * R/Matrix.R (image): method for all Matrices, not just sparse ones.
159    
160    2007-04-17  Martin Maechler  <maechler@stat.math.ethz.ch>
161    
162            * R/Auxiliaries.R (tapply1): unname(.) -> colSums() etc don't end
163            up with extraneous names '0'...'<n-1>'
164    
165    2007-04-12  Martin Maechler  <maechler@stat.math.ethz.ch>
166    
167            * R/dgTMatrix.R (mat2dgT): care about NAs
168    
169    2007-04-11  Martin Maechler  <maechler@stat.math.ethz.ch>
170    
171            * R/kronecker.R: triangularity preserving methods
172    
173    2007-03-27  Martin Maechler  <maechler@stat.math.ethz.ch>
174    
175            * R/kronecker.R: new file collecting kronecker() methods in one
176                    place.  Goal: become much faster!
177    
178    2007-03-23  Martin Maechler  <maechler@stat.math.ethz.ch>
179    
180            * src/dtCMatrix.c (dtCMatrix_solve): use the new code from Kasper
181            Kristensen based cs_spsolve() instead of _lsolve & _usolve which
182            can be much faster.
183    
184            * tests/matprod.R: add regression tests for these (upper & lower).
185    
186    2007-03-19  Martin Maechler  <maechler@stat.math.ethz.ch>
187    
188            * R/Matrix.R (diff): method for our Matrices.
189    
190            * R/sparseMatrix.R (isDiagonal): check dim()!
191    
192    2007-03-17  Martin Maechler  <maechler@stat.math.ethz.ch>
193    
194            * R/Matrix.R (dim<-): new method for "reshape()" built on a
195            proposal from Tamas Papp.
196    
197    2007-03-16  Martin Maechler  <maechler@stat.math.ethz.ch>
198    
199            * R/AllGeneric.R: remove all  if(!isGeneric(.))  clauses
200    
201            * R/zzz.R (.onLoad, .onUnload): do *not* leave bind_activation(TRUE);
202            rather define and export  cBind() and rBind() only.
203            --> useRs *must* change code that used to have cbind()/rbind() !!
204    
205            * R/bind.R: change tests from cbind() to cBind() and similarly to rBind()
206            * R/bind.Rout.save: ditto
207    
208    2007-02-16  Douglas Bates  <bates@r-project.org>
209    
210            * DESCRIPTION (Date, Version): 0.9975-11 with new date
211            * src/dgCMatrix.c (R_to_CMatrix, compressed_to_TMatrix): remove
212            const modifier on declaration of the array 'valid'
213    
214    2007-02-12  Douglas Bates  <bates@stat.wisc.edu>
215    
216            * R/CHMfactor.R: Add image method (coercion to sparseMatrix).
217    
218    2007-02-05  Martin Maechler  <maechler@stat.math.ethz.ch>
219    
220            * DESCRIPTION (Date, Version): 0.9975-10 with new date.
221    
222            * R/Ops.R (Arith): make sure Csparse o Csparse also works for e.g. ntCMatrix
223            * tests/simple.R: test the above and some of these coercions:
224    
225            * R/nsparseMatrix.R: coercing "Csparse" to "lsparseMatrix";
226                    be careful to avoid infinite recursion, using new coercions in
227            * R/ngCMatrix.R and nsC... and ntC...
228            * R/lsparseMatrix.R: ditto
229    
230            * R/SparseM-conv.R: more conversion, notably for triplet matrices.
231    
232            * src/dgCMatrix.c (R_to_C_Matrix): port Doug's fix and
233            * R/Rsparse.R: reactivate .Call()s
234    
235            * tests/Class+Meth.R: a bit more on actual classes
236    
237    2007-02-04  Douglas Bates  <bates@stat.wisc.edu>
238    
239            * src/dgCMatrix.c (compressed_to_TMatrix): fix memory bug using strdup()
240    
241    2007-02-03  Martin Maechler  <maechler@stat.math.ethz.ch>
242    
243            * DESCRIPTION (Version): 0.9975-10 to upload
244    
245            * tests/Class+Meth.R (tstMatrixClass): require coercions to
246            specific classes less unconditionally.
247    
248            * R/Auxiliaries.R: get rid of as_Tsparse() and as_Rsparse()
249    
250            * R/Tsparse.R (triu): etc, use as(*, "TsparseMatrix") instead of as_Tsparse()
251    
252            * R/Rsparse.R (.R.2.T): R-level workaround using compressed_to_TMatrix.
253            * R/Rsparse.R (.R.2.C): R-level workaround since C-level
254            R_to_CMatrix segfaults on one platform.
255            Eliminate most coercion method to *specific* classes, and replace
256            with virtual classes coercions.
257    
258    
259    2007-02-01  Martin Maechler <maechler@stat.math.ethz.ch>
260    
261            * src/init.c: export the CHM...._validate() placeholders, since
262            they *are* called.
263    
264            * tests/Class+Meth.R (classCanCoerce): and starting to test
265            all as(<from>, <to>)
266    
267    2007-01-30  Martin Maechler  <maechler@stat.math.ethz.ch>
268    
269            * R/Tsparse.R ([): more care when subsetting triangular Tsparse
270            * tests/indexing.R: tested now
271            * tests/indexing.Rout.save: updated
272    
273            * src/Csparse.c (Csparse_to_dense): use Rkind = -1 for PATTERN to
274            * src/chm_common.c (chm_dense_to_SEXP): return "ngeMatrix" when
275            appropriate.
276    
277            * NAMESPACE: export a trivial
278            * R/Matrix.R: drop() Matrix-method
279    
280            * R/AllClass.R: moved all prototypes to virtual super classes.
281    
282            * R/Rsparse.R: many more coercions to have less exceptions in
283            * tests/Class+Meth.R:
284    
285            * R/Ops.R (Compare): tweak for case with NA
286            * tests/simpl.R: hence another 'FIXME' eliminated
287    
288    2007-01-29  Martin Maechler  <maechler@stat.math.ethz.ch>
289    
290            * R/diagMatrix.R (solve): the obvious methods for diagonalMatrix
291            objects.
292    
293            * tests/Class+Meth.R (tstMatrixClass): now testing diag(), nnzero(),
294              and more of "!", "&", "|", all, any; coercions
295    
296            * R/Rsparse.R: many coercions (which enable quite a few other
297            methods), thanks to enhancements in
298            * src/dgCMatrix.c (R_to_CMatrix): new, and
299            * src/dgCMatrix.c (compressed_to_TMatrix): now for (d,l,n) ,
300            symmetric & triangular and ..RMatrix objects.
301    
302            * src/TMatrix_as.c (Matrix_T_as_DENSE,Matrix_T_as_GENERAL):
303            renamed file from src/dsTMatrix.c;
304            now dealing with symmetric and triangular Tsparse coercions, both
305            to dense and general.
306    
307    2007-01-27  Martin Maechler  <maechler@stat.math.ethz.ch>
308    
309            * src/dsTMatrix.c: has now "l" and "n" methods besides the "d" ones.
310    
311            * R/Ops.R (Arith): <dgCMatrix> o <numeric> now remains sparse
312            where sensible when the <numeric> is of length > 1.
313    
314    2007-01-26  Martin Maechler  <maechler@stat.math.ethz.ch>
315    
316            * R/Matrix.R ([<-): for M[] <- value: fix length
317    
318    2007-01-25  Martin Maechler  <maechler@stat.math.ethz.ch>
319    
320            * R/Auxiliaries.R (n2l_Matrix): new, to be used in
321            * R/ndenseMatrix.R: new coercions n* -> l*
322    
323    2007-01-22  Martin Maechler  <maechler@stat.math.ethz.ch>
324    
325            * R/triangularMatrix.R: new file; simple triu() and tril() methods.
326    
327            * R/Ops.R ("Logic"): and other "Ops", many updates
328    
329    2007-01-18  Martin Maechler  <maechler@stat.math.ethz.ch>
330    
331            * src/Mutils.h (SET_DimNames): new utility
332    
333            * R/Auxiliaries.R (nnzero): improved and now exported via
334    
335            * NAMESPACE: + nnzero(); length() == prod(dim(.)) method for all "Matrix" objects
336    
337    2007-01-17  Martin Maechler  <maechler@stat.math.ethz.ch>
338    
339            * R/diagMatrix.R (!): fix typo.
340    
341    2007-01-16  Martin Maechler  <maechler@stat.math.ethz.ch>
342    
343            * R/Auxiliaries.R (as_Csparse): and quite a few others:
344                    allow to pass class definition --> speedup
345            * R/sparseMatrix.R: apply the above
346    
347            * R/Csparse.R: coercion Csparse* to dense* now preserves shape properties.
348    
349            * src/Mutils.h (mMatrix_as_geMatrix): new, based on
350            * src/Mutils.c (dup_mMatrix_as_geMatrix): new; generalization of
351            old dup_mMatrix_as_dgeMatrix), eliminating a long-standing "FIXME".
352    
353            * src/dense.c (dense_to_Csparse): use new mMatrix_as_geMatrix()
354    
355            * R/denseMatrix.R (.dense2C): based on dense_to_Csparse: name it,
356            and use it for "sparse*" as well, since it's faster than the
357            as_Csparse(.) way.
358    
359    2007-01-15  Martin Maechler  <maechler@stat.math.ethz.ch>
360    
361            * R/Ops.R ("Logic"): more methods, notably an  <lgC> o <lgC> one.
362    
363    2007-01-12  Martin Maechler  <maechler@stat.math.ethz.ch>
364    
365            * R/Tsparse.R (.TM.repl.i.2col): new internal function to be used
366            as method for   M[ ij ] <- v
367            * R/Csparse.R:: go via Tsparse for "M[ij] <- v"
368    
369            * R/Ops.R: "Compare" for (C|R)sparse: need pointer slot for all
370            FALSE answer
371    
372            * R/Csparse.R (replCmat): fix the "all non-zero" case with reordering
373            * tests/indexing.R: test it, and some of the above
374    
375    2007-01-05  Martin Maechler  <maechler@stat.math.ethz.ch>
376    
377            * R/Auxiliaries.R (is_duplicatedT): new utility
378    
379    2007-01-05  Douglas Bates  <bates@stat.wisc.edu>
380    
381            * src/init.c (R_init_Matrix): export cholmod_scale
382    
383    2006-12-30  Martin Maechler  <maechler@stat.math.ethz.ch>
384    
385            * R/zzz.R (tmp): for R >= 2.5.0, extend formals of our
386            base::as.matrix to (x, ...)
387    
388    2006-12-28  Martin Maechler  <maechler@stat.math.ethz.ch>
389    
390            * R/Ops.R ("Arith" etc): move almost all "Ops" methods to new R
391            file; start using "Logic", hence
392    
393            * DESCRIPTION (Depends): R >= 2.4.1 (since we want "Logic")
394            * NAMESPACE: import and export "Logic"
395    
396    2006-12-27  Martin Maechler  <maechler@stat.math.ethz.ch>
397    
398            * src/zpotfr.f and dependencies: use LAPACK 3.1 version
399            only needed previously to R version 2.5.0.
400    
401    2006-12-26  Martin Maechler  <maechler@stat.math.ethz.ch>
402    
403            * DESCRIPTION (Date, Version): 0.9975-8, ready for release
404    
405            * R/Tsparse.R (replTmat): fix subassignment of triangular
406            * R/Csparse.R (replCmat): ditto
407            * tests/indexing.R: more tests, incl the above fix
408    
409    2006-12-23  Martin Maechler  <maechler@stat.math.ethz.ch>
410    
411            * R/Auxiliaries.R (drop0): extend for non CSparse
412            * R/Auxiliaries.R (diagU2N): should work for all sparseMatrix
413    
414            * src/Csparse.c (Csparse_to_Tsparse, Csparse_general_to_symmetric):
415                    use uplo correctly (!); other places: use uplo_P() macro
416    
417            * R/Csparse.R (replCmat): call diagU2N() when needed
418            * R/Tsparse.R (replTmat): ditto
419    
420            * src/dtCMatrix.c (tCMatrix_validate): new
421            * src/dtTMatrix.c (tTMatrix_validate): new, used in
422            * R/AllClass.R: for validity of dtC, dsC, and dtT, dsT.
423    
424            * R/diagMatrix.R (replDiag): to use in [<-
425    
426    2006-12-22  Martin Maechler  <maechler@stat.math.ethz.ch>
427    
428            * R/Auxiliaries.R (as_Csparse2, as_geSimpl): new functions;
429                    also more general diagU2N().
430    
431    2006-12-21  Martin Maechler  <maechler@stat.math.ethz.ch>
432    
433            * R/bind2.R: new file for all cbind2(), rbind() methods moved here
434            from R/<foo>Matrix.R files. Better diagonal & improved sparse methods.
435    
436    2006-12-20  Martin Maechler  <maechler@stat.math.ethz.ch>
437    
438            * tests/bind.R: a few more cases
439            * R/Auxiliaries.R (.M.kind): also work for atomic vectors
440    
441            * R/denseMatrix.R (cbind2/rbind2): moved here (and generalized) from
442            * R/ddenseMatrix.R (cbind2/rbind2)
443            * R/Tsparse.R (replTmat): final(?!) fix for "[<-" ..
444            * tests/indexing.R
445            * tests/indexing.Rout.save: updated
446    
447    2006-12-18  Martin Maechler  <maechler@stat.math.ethz.ch>
448    
449            * R/Tsparse.R (replTmat): fixed a remaining "[<-" bug in
450            * tests/indexing.R
451    
452    2006-12-15  Martin Maechler  <maechler@stat.math.ethz.ch>
453    
454            * R/sparseMatrix.R (prSpMatrix): "." alignment much improved:
455            align with proper position of "0", i.e., right for integers.
456            argument 'align' by default is "fancy".
457    
458    2006-12-14  Martin Maechler  <maechler@stat.math.ethz.ch>
459    
460            * R/sparseMatrix.R: delegate "Compare" to "Csparse.."
461            * R/Csparse.R: and fix "Compare" for more cases.
462            * tests/Class+Meth.R: test some of these (m == m, m != m)
463    
464    2006-12-13  Martin Maechler  <maechler@stat.math.ethz.ch>
465    
466            * R/lsparseMatrix.R: all() and any() methods
467            * R/ldenseMatrix.R:      ditto
468            * NAMESPACE, R/Matrix.R: ditto
469    
470            * man/all-methods.Rd: document them minimally
471    
472            * tests/simple.R: add a few examples for these
473    
474    2006-12-11  Martin Maechler  <maechler@stat.math.ethz.ch>
475    
476            * R/Tsparse.R ([): fix long standing typo in symmetric case
477            * man/dsCMatrix-class.Rd: add example exhibiting the above case
478    
479    2006-12-10  Douglas Bates  <bates@stat.wisc.edu>
480    
481            * src/CHMfactor.c (CHMfactor_to_sparse): change LDL factorization
482            to LL before converting to a sparse matrix. (The LDL form can be
483            converted to a sparse matrix but it is implicitly a unit
484            triangular matrix and a diagonal matrix overwritten on the diagonal.)
485    
486    2006-12-09  Douglas Bates  <bates@stat.wisc.edu>
487    
488            * src/chm_common.c (chm_factor_to_SEXP): allocate and fill the Dim slot.
489    
490    2006-12-08  Douglas Bates  <bates@stat.wisc.edu>
491    
492            * DESCRIPTION (Version): updated -> release 0.9975-7
493            * src/{init.c,chm_common.c}, inst/include/*: export cholmod_analyze_p
494    
495    2006-11-30  Martin Maechler  <maechler@stat.math.ethz.ch>
496    
497            * R/diagMatrix.R (%*%): write a direct [diag o Csparse] method
498    
499    2006-11-29  Douglas Bates  <bates@stat.wisc.edu>
500    
501            * src/dgeMatrix.c (dgeMatrix_solve): Check error code from dgetri.
502            * tests/dg_Matrix.R: Add Barry Rowlingson's test of a matrix that
503            is exactly singular.
504    
505    2006-11-07  Martin Maechler  <maechler@stat.math.ethz.ch>
506    
507            * DESCRIPTION (Date): updated -> release 0.9975-6
508    
509    2006-11-06  Martin Maechler  <maechler@stat.math.ethz.ch>
510    
511            * R/Csparse.R (replCmat): symmetric indexing of symmetric matrix
512            now returns symmetric.
513    
514            * R/zzz.R ("diag<-"): replace "diag<-" in base for R <= 2.4.x
515    
516            * R/Matrix.R (.M.sub.i.2col):  new, for  M[ cbind(i,j) ] indexing.
517            * R/Matrix.R (.M.repl.i.2col): new, for  M[ cbind(i,j) ] <- value
518    
519            * R/Auxiliaries.R (.type.kind): added
520    
521    2006-11-04  Martin Maechler  <maechler@stat.math.ethz.ch>
522    
523            * src/cs.[ch]: updated to CSparse Version 2.0.3 by simply
524            running src/CSparse_install.sh
525    
526            * R/denseMatrix.R: "[": keep symmetric on symmetric indexing.
527    
528    2006-11-03  Martin Maechler  <maechler@stat.math.ethz.ch>
529    
530            * src/dsCMatrix.c (dsCMatrix_Csparse_solve): new
531            * R/dsCMatrix.R (solve): "fully-sparse" using the above.
532    
533            * R/AllClass.R: "pMatrix" now also inherits from "generalMatrix"
534    
535            * tests/Class+Meth.R (tstMatrixClass): now assure
536            the (important in method programming) property :
537    
538                    ###>>  Every "Matrix" is either
539                    ###>>  "general*", "symmetric*", "triangular*" or "diagonal*"
540    
541                    (where "*" stands for "Matrix")
542    
543            * R/Auxiliaries.R (diagU2N): now .Call()s Csparse_diagU2N for <Csparse>
544    
545            * R/dMatrix.R (Compare(<dMatrix>,<dMatrix>): update and
546            * tests/validObj.R: checks for "comparison"
547    
548            * R/sparseMatrix.R ([): improved indexing for sparse;
549                    trying to keep <symmetric>[ n, n] symmmetric
550    
551            * tests/indexing.R: indexing for logical sparse now ok
552    
553    
554    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
555    
556            * src/Tsparse.c: use xTsparse_validate() , and hence remove
557    
558            * src/{ltC,lsC,lgT}Matrix.[ch]: removed
559    
560    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
561    
562            * R/AllClass.R (Matrix-class): check length of dimnames in validity.
563    
564            * tests/simple.R: validObject() checking the above.
565    
566            * src/dgCMatrix.c (xCMatrix_validate): new, small and simple,
567            replacing both dgCMatrix_validate and lgCM*.
568    
569            * src/Csparse.c (Csparse_dense_prod, etc): do not lose dimnames;
570            fix dimnames setting in other places.
571            * src/chm_common.c (chm_dense_to_SEXP): now can pass dimnames
572    
573    2006-11-01  Martin Maechler  <maechler@stat.math.ethz.ch>
574    
575            * R/Csparse.R,src/Csparse.c, etc: tcrossprod(<CsparseM>,<CsparseM>)
576    
577            * R/sparseMatrix.R (isSymmetric): drop 'factors' slot for
578            symmetry test, via
579            * R/Auxiliaries.R (.as.dgC.0.factors):
580    
581    2006-11-01  Douglas Bates  <bates@r-project.org>
582    
583            * R/Csparse.R,src/Csparse.c,tests/matprod.R,
584            man/CsparseMatrix-class.Rd: crossprod(<CsparseMatrix>,
585            <CsparseMatrix>) added
586    
587    2006-10-30  Martin Maechler  <maechler@stat.math.ethz.ch>
588    
589            * tests/matprod.R: add a variation of Harri's example
590    
591            * R/dsparseMatrix.R: fix crossprod(<dsparse>, <dge>) to *not*
592            recursive infinitely.
593    
594            * R/dgCMatrix.R: + solve(<sparse>, <sparse>)
595    
596            * tests/indexing.R: add test for the "<" bug fixed 10-27 in R/dMatrix.R
597    
598    2006-10-28  Martin Maechler  <maechler@stat.math.ethz.ch>
599    
600            * tests/Class+Meth.R (tstMatrixClass): more: use non-trivial
601            matrix if possible; test m+m == 2*m; now test dgRMatrix.
602            * R/dgRMatrix.R (.to.dgR): a few more coercions, in order to
603            satisfy the above test.
604    
605    2006-10-27  Martin Maechler  <maechler@stat.math.ethz.ch>
606    
607            * R/Matrix.R (Ops):  <Matrix> o <matrix>  method added
608    
609            * R/dgCMatrix.R: solve(a, b="missing") based on
610            * src/dgCMatrix.c (dgCMatrix_matrix_solve): extend to work with
611            RHS = NULL.
612    
613            * R/diagMatrix.R (diagdiagprod): extend %*% etc to ldiMatrix;
614            add more (needed) [t]crossprod() methods.
615    
616            * man/ddiMatrix-class.Rd: more info, notably on 'diag'
617    
618            * R/Auxiliaries.R (as_CspClass): cleanup
619            (drop0): internal utility for "Csparse_drop(*, 0)"
620            (.bail.out.2): encourage active feedback
621    
622    2006-10-26  Martin Maechler  <maechler@stat.math.ethz.ch>
623    
624            * R/dMatrix.R(Compare): new(), then slots [no validity check]
625    
626            * src/Csparse.c (Csparse_validate): fixed (and more efficient in
627            non-valid or 'sorted' case).
628    
629            * R/dsparseMatrix.R: add "chol" method.
630            * R/ddenseMatrix.R: ditto
631    
632            * R/diagMatrix.R (Ops): group methods for  <diagonal> o <sparse>
633            * NAMESPACE (Ops)
634            * R/diagMatrix.R (diag2T): simple utility used "higher level"
635            coercion; deprecating direct lower level coercions.
636    
637            * R/*.R (seq): use seq_len() and seq_along() where possible.
638    
639    
640    2006-10-23  Martin Maechler  <maechler@stat.math.ethz.ch>
641    
642            * DESCRIPTION (Version): 0.9975-5 ready for release
643    
644    2006-10-20  Douglas Bates  <bates@stat.wisc.edu>
645    
646            * src/init.c (R_init_Matrix): export more cholmod CCallable functions.
647    
648    2006-10-20  Martin Maechler  <maechler@stat.math.ethz.ch>
649    
650            * R/AllClass.R (corMatrix): add 'validity' check;
651                    comment out unused "LDL" class definition
652            * NAMESPACE: mention, but do not export "LDL" class
653            * R/corMatrix.R: new (simple), needed for R-devel with
654            * tests/Class+Meth.R (tstMatrixClass): 1 exception for corMatrix
655              coerce and t() exceptions for all 5 'Mat.MatFact' classes.
656    
657    2006-10-19  Douglas Bates  <bates@stat.wisc.edu>
658    
659            * src/chm_common.h: Add R_cholmod_start to initialize cholmod to
660            use Rprintf and R's error handling.
661    
662    2006-10-17  Martin Maechler  <maechler@stat.math.ethz.ch>
663    
664            * R/diagMatrix.R (%*%): rep(*, each = .) in Matrix %*% diagonal.
665            * tests/matprod.R: add tests for the bug fixed.
666    
667    2006-10-11  Douglas Bates  <bates@stat.wisc.edu>
668    
669            * src/HBMM.[ch]: remove HarwellBoeing format for writing.
670            * src/SOURCES_C.mkf (SOURCES_C): no longer compile iohb.c
671    
672    2006-10-06  Douglas Bates  <bates@stat.wisc.edu>
673    
674            * R/d[gs]CMatrix.R: deprecate the writeHB function.  Use writeMM instead.
675    
676    2006-10-06  Martin Maechler  <maechler@stat.math.ethz.ch>
677    
678            * DESCRIPTION (Version): 0.9975-3
679    
680            * R/diagMatrix.R (bdiag): new function constructing block diagonal
681            (sparse) matrices.
682            * man/bdiag.Rd: docu + examples
683    
684            * R/Csparse.R (replCmat): calling new Csparse_drop() now.
685    
686            * src/Csparse.c (Csparse_general_to_symmetric, Csparse_drop): new functions
687            * R/lsCMatrix.R: three more coercions to lsC (thanks to the above)
688    
689            * R/diagMatrix.R (Diagonal): '[<-' method for diag.matrices such
690            that result is sparse or diagonal (and not dense).
691    
692            * man/Subassign-methods.Rd: fix examples
693    
694            * R/Matrix.R (Matrix):  Matrix(0, *) or Matrix(*, sparse=TRUE)
695            should always return a sparse (and not sometimes a diagonal) matrix.
696    
697    2006-10-05  Martin Maechler  <maechler@stat.math.ethz.ch>
698    
699            * R/Matrix.R ([<-): also for value "Matrix" or "matrix"
700    
701    2006-10-04  Douglas Bates  <bates@stat.wisc.edu>
702    
703            * DESCRIPTION (Version): 0.9975-2
704    
705            * inst/include/Matrix_stubs.c (M_cholmod_sparse_to_triplet): export more symbols
706    
707    2006-10-02  Douglas Bates  <bates@R-project.org>
708    
709            * tests/dg_Matrix.R: Simplify test taking into account new code.
710    
711    2006-09-29  Martin Maechler  <maechler@stat.math.ethz.ch>
712    
713            * R/Csparse.R (replCmat): improve for missing i / j in non-simple cases
714    
715            * R/lsTMatrix.R: new files w/ missing methods
716            * R/nsTMatrix.R:  "  'for completeness'
717    
718            * tests/Class+Meth.R: a bit less 'not.ok.classes'
719    
720            * R/Tsparse.R (t): generalized "t" method from "dgT*" to "Tsparse*"
721    
722    
723    2006-09-28  Douglas Bates  <bates@R-project.org>
724    
725            * src/dppMatrix.h: Ensure definition of dspMatrix_validate is
726            included.
727    
728            * src/init.c, inst/include/{Matrix.h,Matrix_stubs.h,cholmod.h}:
729            Export C-callable functions used in Zt_create in lme4.
730    
731    2006-09-28  Martin Maechler  <maechler@stat.math.ethz.ch>
732    
733            * DESCRIPTION (Version): 0.9975-1
734    
735            * tests/simple.R: less checks fail; using NA, found that our
736                    kronecker() is not base-compatible with NA's.
737    
738            * R/dMatrix.R: "Compare" method now implemented for all cases
739    
740            * R/Auxiliaries.R (indTri): == which([lower/upper].tri( * )) new utility
741    
742            * man/dtpMatrix-class.Rd: mention length of 'x' slot
743    
744            * src/dtpMatrix.c (dtpMatrix_validate): fix check
745            * src/dspMatrix.c (dspMatrix_validate): ditto
746    
747            * R/dtTMatrix.R (gt2tT): fix ("l" -> "n")
748              including coercion to [nl]tTMatrix.
749    
750            * R/diagMatrix.R (show): print a header line as for other classes.
751    
752    2006-09-27  Martin Maechler  <maechler@stat.math.ethz.ch>
753    
754            * src/Makefile.win (SUBDIRS): fix typo
755    
756    2006-09-19  Martin Maechler  <maechler@stat.math.ethz.ch>
757    
758            * DESCRIPTION (Date): ready to release 0.9975-0 to CRAN
759    
760    2006-09-18  Douglas Bates  <bates@stat.wisc.edu>
761    
762            * R/[CT]sparse.R (crossprod and tcrossprod): Handle the cases for x
763            symmetric and y missing in R code using %*% (cholmod_aat doesn't
764            accept a symmetric matrix).
765            * tests/group-methods.R: Uncomment test of crossprod applied to
766            lsCMatrix objects.
767    
768    2006-09-18  Martin Maechler  <maechler@stat.math.ethz.ch>
769    
770            * R/AllClass.R (symmetricMatrix): add validity method (available
771            in C for a long time). Many "n..Matrix": drop (wrong) validity arg.
772    
773            * src/lgCMatrix.c (lgCMatrix_validate): check 'x' slot (!)
774    
775            * tests/indexing.Rout.save:
776            * tests/indexing.R: additions, mainly for 'lsparse'
777    
778            * R/diagMatrix.R (Diagonal) & coercion to lgTMatrix: fixes for NA
779            case.
780    
781            * R/Auxiliaries.R (nz.NA): new utility now used in nnzero()
782    
783    2006-09-16  Martin Maechler  <maechler@stat.math.ethz.ch>
784    
785            * R/sparseMatrix.R (prSpMatrix): print logical NAs "visibly"
786                    as 'N' (1-letter - Ok?)
787    
788            * tests/group-methods.R: add test for logical + NAs
789    
790            * R/dMatrix.R ("Compare"): fix to work with NA's
791    
792            * R/AllClass.R: "Cholesky" etc now inherit from MatrixFactorization.
793    
794            * src/lgCMatrix.c (ncsc_to_matrix): renamed from lcsc_to_matrix()
795                    which is implemented.
796    
797    2006-09-15  Martin Maechler  <maechler@stat.math.ethz.ch>
798    
799            * src/chm_common.c: coerce logical <-> double instead of
800            typecasting;  needed for "l" matrix handling in cholmod.
801    
802            * tests/other-pkgs.R (graph): small extension in "graph" checks.
803    
804            * R/sparseMatrix.R (graphNEL -> Tsparse): method for weight case.
805            (Tsp2grNEL): other fixes needed
806    
807    2006-09-11  Martin Maechler  <maechler@stat.math.ethz.ch>
808    
809            * R/AllClass.R ("nMatrix"): and subclasses for "nonzero pattern"
810                    Matrices, since "lMatrix", also "lsparseM" can have NA
811            * R/ndenseMatrix.R, etc: new source files
812            * man/nsparseMatrix-classes.Rd, etc: new help files
813            * tests/: adaptions
814            * src/chm_common.c (chm_dense_to_SEXP): and others:
815                    new 'Rkind' argument: "l*" and "d*" both use CHOLMOD_REAL
816            * src/Csparse.c, etc: ditto
817    
818    2006-09-11  Douglas Bates  <bates@R-project.org>
819    
820            * src/Mutils.[ch],init.c inst/include/*.h: Move the
821            alloc_d**Matrix functions to the lme4 package.
822    
823    2006-09-09  Douglas Bates  <bates@R-project.org>
824    
825            * src/dsCMatrix.c (dsCMatrix_Cholesky): igoring LDL = FALSE now
826            fixed
827    
828    2006-09-09  Martin Maechler  <maechler@stat.math.ethz.ch>
829    
830            * R/lMatrix.R: new
831    
832            * R/sparseMatrix.R (Tsp2grNEL): do not yet use graph::foo()
833    
834            * R/dgeMatrix.R: do not define tcrossprod() methods for "matrix"
835            * man/tcrossprod.Rd: ditto
836    
837    2006-09-08  Douglas Bates  <bates@stat.wisc.edu>
838    
839            * inst/include/Matrix_stubs.c,Matrix.h: Add declarations and stubs
840            for exported functions
841            * src/Makefile, src/CHOLMOD/Lib/Makefile, src/Metis,CAMD,CCOLAMD:
842            Remove partitioning algorithms for sparse matrix reordering.  The
843            copyright on the Metis code was problematic and the methods were
844            rarely used.
845            * src/triplet_to_col.[ch],MMHB.[ch]: Remove triplet_to_col.  Such
846            operations are now done entirely in CHOLMOD code.
847    
848    2006-09-06  Douglas Bates  <bates@R-project.org>
849    
850            * src/Mutils.h: Remove functions that are no longer used.
851    
852    2006-09-04  Douglas Bates  <bates@R-project.org>
853    
854            * src/dtCMatrix.c (dtCMatrix_validate): rename functions.
855            * src/DEPS.mkf: update
856    
857    2006-09-02  Martin Maechler  <maechler@stat.math.ethz.ch>
858    
859            * created branches/Matrix-for-R-2.3.x;  on trunk: do
860            * DESCRIPTION (Version): 0.9975-0
861            (Depends): R (>= 2.4.0)
862    
863    2006-09-01  Douglas Bates  <bates@R-project.org>
864    
865            * R/sparseMatrix.R: Added direct method to CsparseMatrix from graphNEL
866    
867    2006-09-01  Martin Maechler  <maechler@stat.math.ethz.ch>
868    
869            * R/sparseMatrix.R: add coercion from "ANY" to "sparseMatrix"
870            * R/denseMatrix.R:  add coercion from "ANY" to "denseMatrix"
871    
872            * R/Matrix.R ([): use nargs() to disambiguate M[i] and M[i,]
873    
874    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
875    
876            * R/sparseMatrix.R (Arith): moved Arith group method one-level up
877            from "dsparse" to "sparse" and now go via "Csparse" instead of "dgC"
878            * R/dsparseMatrix.R: ditto
879            * R/Csparse.R: ditto
880    
881    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
882    
883            * R/dMatrix.R (Compare): improve availability of "<", etc
884            * R/Auxiliaries.R (asTuniq): new; also make use of R 2.4.x print(*,max)
885    
886    2006-08-30  Martin Maechler  <maechler@stat.math.ethz.ch>
887    
888            * R/dgCMatrix.R: aargh: "Arith(<dgC>, numeric)" was wrong because
889            of a 0-index which was used as 1-index (..hmm)
890    
891            * R/sparseMatrix.R (prSpMatrix): fix printing an all-0 sparse Matrix
892    
893            * R/Auxiliaries.R (all0, is0): for 0-testing in presence of NA's
894            * R/Auxiliaries.R (isTriMat): use all0() for 0-testing.
895            (.is.diagonal): ditto
896    
897            * R/lgTMatrix.R: as("matrix", "lgTMatrix"): warn about NA's
898    
899            * R/Matrix.R (Matrix): also work for NA data
900    
901    2006-08-28  Martin Maechler  <maechler@stat.math.ethz.ch>
902    
903            * R/Matrix.R (Matrix): + 'forceCheck' argument; dimnames setting
904            in all cases.
905    
906    2006-08-27  Douglas Bates  <bates@R-project.org>
907    
908            * src/dense.[ch],init.c, R/ddenseMatrix.R, man/band.Rd
909            (ddense_band): Added triu, tril and band for ddenseMatrix objects.
910    
911    2006-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>
912    
913            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): added all subclasses of
914            subclasses of "ddenseMatrix"
915            * src/init.c et al: outcomment dtrM*_as_dge* and dsyM*_as_dge*_
916            * R/ddenseMatrix.R et al: setAs("ddenseMatrix", "dgeMatrix", ..)
917            instead of half dozen specialized ones.
918    
919    2006-08-25  Douglas Bates  <bates@R-project.org>
920    
921            * R/lmer.R (qqmath method): Bug fix provided by Emmanuel Tillard
922            <tillard@cirad.fr> - ordering standard errors to match effects.
923    
924    2006-08-24  Douglas Bates  <bates@R-project.org>
925    
926            * src/lsCMatrix.c (lsCMatrix_trans): Remove lsCMatrix_chol based
927            on R_ldl.
928            * R/lCholCMatrix.R,
929            src/[dl]CholCMatrix.[ch],R_ldl.[ch],Metis_utils.[ch]: removed
930            * src/dsCMatrix.c (dsCMatrix_to_dgTMatrix): use CHOLMOD
931            * many files in ./R and ./src: Use more general version of
932            dup_mMatrix_as_dgeMatrix to simplify method definitions.
933            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): Add ddiMatrix,
934            dtpMatrix, dspMatrix and dppMatrix conversions.
935    
936    
937    2006-08-23  Douglas Bates  <bates@R-project.org>
938    
939            * R/AllClass.R,lCholCMatrix.R,src/SOURCES_C.mkf,init.c,NAMESPACE:
940            Remove classes lCholCMatrix and dCholCMatrix based on R_ldl code.
941            * src/dgeMatrix.c: Ensure 'factors' slot exists in result of
942            dgeMatrix_crossprod (may need to do this in other places).
943            * R/AllGeneric.R,dsCMatrix.R, src/dscMatrix.[ch]: Add Cholesky
944            generic and method for dsCMatrix.  Use CHOLMOD for chol().
945    
946    2006-08-22  Douglas Bates  <bates@R-project.org>
947    
948            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): updated for general
949            types of classed Matrices, matrices or numeric or logical vectors.
950            * src/init.c: register dup_mMatrix_as_dgeMatrix for coercions.
951            * src/chm_common.c,Mutils.h (as_cholmod_factor): Move check_class
952            to Mutils.h (as an inline) and change name to Matrix_check_class;
953            fixes in as_cholmod_factor and chm_factor_to_SEXP.
954            * src/dsCMatrix.[ch]: Use CHOLMOD for dsCMatrix_chol and
955            dsCMatrix_matrix_solve.  Comment out vestigial functions.
956            * src/Csparse.c: use diag_P and uplo_P macros.
957    
958    2006-08-21  Douglas Bates  <bates@R-project.org>
959    
960            * src/lmer.c (internal_mer_RZXinv): Fix memory leak caught by
961            valgrind.
962            * tests/matprod.R: Add tests to verify that 'solve' and '%*%' are
963            inverses.
964            * src/sparseQR.c (sparseQR_validate): add new validation test, fix
965            -Wall warnings.
966            * src/dppMatrix.c,dtrMatrix.c,dgCMatrix.c,dgeMatrix.c,dspMatrix.c:
967            Use dup_mMatrix_as_dgeMatrix.
968    
969    2006-08-20  Douglas Bates  <bates@R-project.org>
970    
971            * src/sparseQR.c: Fix thinko in sparseQR_resid_fitted.
972            * tests/sparseQR.R: Added
973            * man/sparseQR-class.Rd: Document methods for qr.* generics
974            * R/sparseQR.R: Return correct # of coefs; fix cut-and-paste errors
975    
976    2006-08-19  Douglas Bates  <bates@R-project.org>
977    
978            * NAMESPACE, R/sparseQR.R, src/init.c,sparseQR.[ch],SOURCES_C.mkf:
979            Added methods for sparseQR for qr.qy, qr.qty, qr.coef, qr.resid
980            and qr.fitted.
981            * src/Mutils.[ch]: Added dup_mMatrix_as_dgeMatrix utility
982            * src/dgCMatrix.c: Check for ordering before storing q in dgCMatrix_QR
983    
984    2006-08-18  Martin Maechler  <maechler@stat.math.ethz.ch>
985    
986            * R/AllGeneric.R: add "qr" and "chol" generics; via 'trick' since
987            the base version has no "..." argument.
988    
989            * R/sparseMatrix.R (prSpMatrix): fix the triangular unit diagonal case.
990    
991            * R/Matrix.R: define and
992            * NAMESPACE: export as.numeric() and as.logical() methods.
993                    Let's hope these do not badly slow down something...
994            Finally export the zapsmall() method.
995    
996    2006-08-17  Douglas Bates  <bates@R-project.org>
997    
998            * src/dgCMatrix.[ch] (dgCMatrix_matrix_solve), src/init.c,
999            R/dgCMatrix.R: solve methods for dgCMatrix and dense RHS.
1000            * src/dtCMatrix.c :Remove code that is no longer used
1001            * R/dtCMatrix.R: Use C code for diagU2N in CsparseMatrix classes
1002    
1003    2006-08-14  Douglas Bates  <bates@R-project.org>
1004    
1005            * src/Csparse.[ch],init.c (Csparse_to_logical): Added utilities
1006            Csparse_to_logical and Csparse_symmetric_to_general.
1007            * R/dgCMatrix.R,dsCMatrix.R,Csparse.R : Consolidate general
1008            coercion methods between CsparseMatrix and TsparseMatrix.
1009    
1010    2006-08-14  Douglas Bates  <bates@R-project.org>
1011    
1012            * R/dtCMatrix.R,dgCMatrix.R,Csparse.R src/init.c,dgCMatrix.[ch],
1013            Csparse.[ch],chm_common.c,dense.c : Use CHOLMOD code and methods
1014            for CsparseMatrix, TsparseMatrix, denseMatrix or matrix when
1015            possible.
1016    
1017    2006-08-12  Douglas Bates  <bates@R-project.org>
1018    
1019            * src/chm_common.[ch],Csparse.[ch],Tsparse.[ch],CHMfactor.c,dtTMatrix.c,
1020              dgTMatrix.c,dgCMatrix.c,dsCMatrix.c,dtTMatrix.c, R/dsTMatrix.R,
1021              Tsparse.R,Csparse.R,dgTMatrix.R,dsCMatrix.R,lsCMatrix.R:
1022              generalize conversions between TsparseMatrix, CsparseMatrix,
1023              denseMatrix and matrix.  Preserve triangularity property and
1024              propagate Dimnames in the easy cases.
1025    
1026    2006-08-10  Douglas Bates  <bates@R-project.org>
1027    
1028            * src/lmer.c: adjust checks in glmer_init for S4SXP
1029            * tests/validObj.R: check of all(eq) should be all(eq@x) - worked
1030            before S4SXP but for the wrong reasons.
1031    
1032    2006-08-08  Douglas Bates  <bates@R-project.org>
1033    
1034            * src/Csparse.c (Csparse_crossprod): tcrossprod result has stype = -1.
1035            Later modified to return the upper triangle only.
1036            * R/dgTMatrix.R: Remove vestigial crossprod and tcrossprod methods.
1037    
1038    2006-08-07  Douglas Bates  <bates@R-project.org>
1039    
1040            * src/Csparse.c (Csparse_crossprod): Set stype on result to avoid
1041            R-level conversion to a sparse symmetric class.
1042            * R/Tsparse.R,R/Csparse.R (crossprod and tcrossprod methods):
1043            Remove conversion to sparse symmetric classes (now done in C code).
1044    
1045    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
1046    
1047            * R/dgCMatrix.R: disable old crossprod and tcrossprod methods
1048            * man/band.Rd:  adapt the \dontshow{} unit test.
1049    
1050    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
1051    
1052            * DESCRIPTION (Version): 0.995-14  for CRAN
1053    
1054            * tests/other-pkgs.R: oops: library(Matrix) outside *if* !
1055    
1056            * R/sparseMatrix.R (Tsp2grNEL): fixed Tsparse -> graph coercion
1057            * tests/other-pkgs.R:  more checks, sparseMatrix -> graph
1058    
1059            * R/Auxiliaries.R (as_Tsparse, as_Rsparse): new
1060            * R/Tsparse.R (tril, triu, band): methods
1061            * R/dgRMatrix.R (tril, ...):    ditto
1062            * man/band.Rd:                  ditto
1063    
1064    2006-08-04  Martin Maechler  <maechler@stat.math.ethz.ch>
1065    
1066            * R/Matrix.R (head, tail): directly use utils:::head.matrix
1067                    to be up-to-date automatically.
1068    
1069    2006-08-03  Martin Maechler  <maechler@stat.math.ethz.ch>
1070    
1071            * DESCRIPTION (Version): 0.995-13 to be released to CRAN
1072    
1073            * DESCRIPTION (Lazydata): no, instead of 'yes' because it fails for:
1074            * data/CAex.R, inst/external/CAex_slots.rda: replacing data/CAex.rda
1075            * data/KNex.R, inst/external/KNex_slots.rda: replacing data/KNex.rda
1076            such that the S4 objects are always created by the current version
1077            of R and 'Matrix' class definitions.
1078    
1079    2006-08-01  Douglas Bates  <bates@R-project.org>
1080    
1081            * R/lmer.R (LMEoptimize method), tests/lmer.R,
1082            inst/external/test3comp.rda: Added warnings for convergence on
1083            boundary and test cases.
1084    
1085            * src/lmer.c (mer_postVar): Modified to return the variances that
1086            are marginal to the fixed effects, not conditional on them (which
1087            is what the bVar slot contents represent).
1088    
1089    2006-07-31  Douglas Bates  <bates@R-project.org>
1090    
1091            * NAMESPACE, src/lmer.c, R/lmer.R (hatTrace):  Add the hatTrace
1092            function which calls the C function mer_hat_trace2.
1093    
1094            * man/ranef.Rd: Include description of "postVar" argument and
1095            producing a caterpillar plot.
1096    
1097    2006-07-31  Martin Maechler  <maechler@stat.math.ethz.ch>
1098    
1099            * NAMESPACE:    change  "correlation" to "corMatrix"
1100            * R/AllClass.R: to avoid clash with S3 class in 'nlme'.
1101            * R/dpoMatrix.R: ditto
1102            * R/lmer.R:      ditto
1103    
1104    2006-07-28  Douglas Bates  <bates@R-project.org>
1105    
1106            * src/lmer.c (internal_mer_RZXinv): Split the calculation of the
1107            RZXinv slot's contents into a separate internal function that can
1108            be used in mer_hat_trace.
1109    
1110    2006-07-22  Martin Maechler  <maechler@stat.math.ethz.ch>
1111    
1112            * R/Matrix.R: Coercions "Matrix" -> (sparse|dense)Matrix
1113            via new smart
1114            * R/Auxiliaries.R (as_Csparse, as_dense, .M.shapse): new
1115            utility functions.
1116    
1117    
1118    2006-07-21  Martin Maechler  <maechler@stat.math.ethz.ch>
1119    
1120            * R/Csparse.R (tril, triu, band): do return *triangular* classed
1121            matrices when appropriate; band() even symmetric ones.
1122            (replCmat): extend to potentially all "CsparseMatrix"
1123            * R/Tsparse.R (replTmat): extend to all "TsparseMatrix"; hence
1124            allow subassignment for special sparse matrices.
1125    
1126            * R/Auxiliaries.R (as_geClass): factor out the  .M.kind() functionality
1127    
1128            * src/lmer.c (mer_MCMCsamp, glmer_MCMCsamp): new 'verbose'
1129            argument; in glmer_*(): print only if(verbose).
1130    
1131            speed-optimize a few places by moving REAL(.) out of loops.
1132    
1133            * src/lmer.h, src/init.h, R/lmer.R:  related to above.
1134    
1135    2006-07-20  Martin Maechler  <maechler@stat.math.ethz.ch>
1136    
1137            * R/Matrix.R("["): disable ("Matrix", i = "logical", j = "missing"),
1138                    since that wrongly triggers also for M[ logi , ]
1139    
1140            * R/denseMatrix.R: "[" methods now also work e.g. when indexing
1141            a symmetric matrix that results in a non-symmetric one.
1142            * R/Auxiliaries.R (as_geClass): new function used in "[" above.
1143    
1144            * R/dMatrix.R: make round(M) work as round(M, 0)
1145    
1146            * R/dgTMatrix.R (image): coordinate system and axis now use
1147            1-based indices, not 0-based ones.
1148    
1149            * R/Tsparse.R (.ind.prep for "["): get rid of max(<empty>) warning.
1150            * tests/indexing.R: test it.
1151    
1152            * NAMESPACE: export isSymmetric(); has been a generic in "base" for a while;
1153            * man/isSymmetric-methods.Rd: and document it.
1154    
1155            * R/SparseM-conv.R: added coercion methods for some 'SparseM' matrices.
1156            * man/SparseM-conv.Rd: docu them
1157    
1158            * tests/other-pkgs.R: renamed from tests/graph.R and add example
1159                    for 'SparseM' conversions
1160    
1161    2006-07-17  Douglas Bates  <Douglas.Bates@R-project.org>
1162    
1163            * R/Matrix.R (head): added head() and tail() methods.
1164    
1165    2006-07-17  Martin Maechler  <maechler@stat.math.ethz.ch>
1166    
1167            * DESCRIPTION (Version): 0.995-12 released to CRAN
1168    
1169    2006-07-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1170    
1171            * tests/simple.R: add check for correct dsT -> dgT coercion;
1172                    add check for correct printing of symmetric sparse matrices.
1173    
1174            * R/Auxiliaries.R (non0ind): return *all* non-0 entry indices also
1175            for sparse symmetric matrices.
1176    
1177            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): do not copy the
1178            diagonal twice.
1179    
1180    2006-07-11  Douglas Bates  <Douglas.Bates@R-project.org>
1181    
1182            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): Fix a case of INTEGER
1183            being applied to the x slot (detected by Brian Ripley).
1184    
1185    2006-07-10  Martin Maechler  <maechler@stat.math.ethz.ch>
1186    
1187            * src/dgCMatrix.c (dgCMatrix_validate): 'p' slot must have correct length.
1188    
1189            * R/Auxiliaries.R (isTriC): fix buglet (we were 1-based!)
1190    
1191    2006-07-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1192    
1193            * src/lgCMatrix.c (lgCMatrix_diag): new function
1194            * R/lgCMatrix.R (diag): for new method
1195    
1196            * R/AllClass.R (TsparseMatrix): do use Tsparse_validate
1197                 ==> construction of illegal "*gTMatrix" via new() should
1198                 now be much less easy:
1199            * tests/Class+Meth.R: assertError() for some illegal "dgT*"
1200    
1201            * R/Matrix.R (Matrix): Matrix(0, nrow,ncol) now "goes sparse"
1202                    directly.
1203            * man/Matrix.Rd: documents it.
1204    
1205    2006-07-06  Douglas Bates  <bates@R-project.org>
1206    
1207            * src/pedigree.c (pedigree_inbreeding): Correction in
1208            initialization.  This function is not currently being used and is
1209            not fully tested.
1210    
1211            * NAMESPACE, R/{AllClass.R,lmer.R}, src/{init.c,lmer.c}:
1212            Introduced the glmer class.  Added code for mcmcmsamp on glmer
1213            objects.  Modified validity check on pedigree objects to account
1214            for nonparallel patterns of missingness of parents.
1215    
1216            * man/{lmer-class.Rd,mcmcsamp.Rd}: Update documentation for glmer
1217            class.
1218    
1219    2006-07-01  Martin Maechler  <maechler@stat.math.ethz.ch>
1220    
1221            * R/pMatrix.R: coercion pMatrix -> Tsparse
1222    
1223    2006-06-12  Douglas Bates  <bates@R-project.org>
1224    
1225            * DESCRIPTION (Version): 0.995-11 released to CRAN
1226    
1227            * R/lmer.R (mcmcsamp method): Corrected arrangments of names on
1228            the output from mcmcsamp.
1229    
1230    2006-06-10  Douglas Bates  <bates@R-project.org>
1231    
1232            * R/lmer.R (simulestimate): added C code for calculating the trace
1233            of the hat matrix.
1234    
1235    2006-06-09  Martin Maechler  <maechler@stat.math.ethz.ch>
1236    
1237            * R/diagMatrix.R (setAs): define coercion methods to sparse matrix
1238            classes.
1239            * R/sparseMatrix.R etc: multiplication of diagonal and sparse
1240    
1241    2006-06-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1242    
1243            * R/dgTMatrix.R (colSums): etc. All four of
1244            colSums(), rowSums(), colMeans(), rowMeans() now should work for
1245            all "Matrices".
1246    
1247  2006-06-01  Douglas Bates  <bates@stat.wisc.edu>  2006-06-01  Douglas Bates  <bates@stat.wisc.edu>
1248    
1249          * R/lmer.R (panel.ci): Add a reference line at zero and a          * R/lmer.R (panel.ci): Add a reference line at zero and a
# Line 28  Line 1274 
1274    
1275          * R/sparseMatrix.R: Matrix <-> graph methods: can no longer use          * R/sparseMatrix.R: Matrix <-> graph methods: can no longer use
1276          the C code depending on a slot structure that's no longer valid.          the C code depending on a slot structure that's no longer valid.
1277          * src/dgTMatrix.c: dito (also: src/init.c src/dgTMatrix.h)          * src/dgTMatrix.c: ditto (also: src/init.c src/dgTMatrix.h)
1278    
1279    
1280  2006-05-17  Douglas Bates  <bates@stat.wisc.edu>  2006-05-17  Douglas Bates  <bates@stat.wisc.edu>
# Line 151  Line 1397 
1397          * data/KNex.rda: replacing 'mm' and 'y' by KNex <- list(mm=mm, y=y)          * data/KNex.rda: replacing 'mm' and 'y' by KNex <- list(mm=mm, y=y)
1398          * man/KNex.Rd: and other help files          * man/KNex.Rd: and other help files
1399          * tests/*.R: several ones needed adaption          * tests/*.R: several ones needed adaption
1400          * inst/doc/Comparisons.Rnw: dito          * inst/doc/Comparisons.Rnw: ditto
1401    
1402  2006-03-11  Martin Maechler  <maechler@stat.math.ethz.ch>  2006-03-11  Martin Maechler  <maechler@stat.math.ethz.ch>
1403    
# Line 355  Line 1601 
1601  2005-08-26  Martin Maechler  <maechler@stat.math.ethz.ch>  2005-08-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1602    
1603          * R/Matrix.R:  added first "[<-" methods; not yet functional          * R/Matrix.R:  added first "[<-" methods; not yet functional
1604          * R/denseMatrix.R: dito          * R/denseMatrix.R: ditto
1605          * man/Subassign-methods.Rd: new help file for these          * man/Subassign-methods.Rd: new help file for these
1606    
1607  2005-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>  2005-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>

Legend:
Removed from v.1288  
changed lines
  Added in v.1902

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