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

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