SCM

SCM Repository

[matrix] Diff of /pkg/ChangeLog
ViewVC logotype

Diff of /pkg/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

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

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

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