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

Legend:
Removed from v.1298  
changed lines
  Added in v.1909

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