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

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