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

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