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 1747, Mon Jan 29 20:17:33 2007 UTC
# Line 1  Line 1 
1    2007-01-29  Martin Maechler  <maechler@stat.math.ethz.ch>
2    
3            * tests/Class+Meth.R (tstMatrixClass): now testing diag(), nnzero(),
4              and more of "!", "&", "|", all, any; coercions
5    
6            * R/Rsparse.R: many coercions (which enable quite a few other
7            methods), thanks to enhancements in
8            * src/dgCMatrix.c (R_to_CMatrix): new, and
9            * src/dgCMatrix.c (compressed_to_TMatrix): now for (d,l,n) ,
10            symmetric & triangular and ..RMatrix objects.
11    
12            * src/TMatrix_as.c (Matrix_T_as_DENSE,Matrix_T_as_GENERAL):
13            renamed file from src/dsTMatrix.c;
14            now dealing with symmetric and triangular Tsparse coercions, both
15            to dense and general.
16    
17    2007-01-27  Martin Maechler  <maechler@stat.math.ethz.ch>
18    
19            * src/dsTMatrix.c: has now "l" and "n" methods besides the "d" ones.
20    
21            * R/Ops.R (Arith): <dgCMatrix> o <numeric> now remains sparse
22            where sensible when the <numeric> is of length > 1.
23    
24    2007-01-26  Martin Maechler  <maechler@stat.math.ethz.ch>
25    
26            * R/Matrix.R ([<-): for M[] <- value: fix length
27    
28    2007-01-25  Martin Maechler  <maechler@stat.math.ethz.ch>
29    
30            * R/Auxiliaries.R (n2l_Matrix): new, to be used in
31            * R/ndenseMatrix.R: new coercions n* -> l*
32    
33    2007-01-22  Martin Maechler  <maechler@stat.math.ethz.ch>
34    
35            * R/triangularMatrix.R: new file; simple triu() and tril() methods.
36    
37            * R/Ops.R ("Logic"): and other "Ops", many updates
38    
39    2007-01-18  Martin Maechler  <maechler@stat.math.ethz.ch>
40    
41            * src/Mutils.h (SET_DimNames): new utility
42    
43            * R/Auxiliaries.R (nnzero): improved and now exported via
44    
45            * NAMESPACE: + nnzero(); length() == prod(dim(.)) method for all "Matrix" objects
46    
47    2007-01-17  Martin Maechler  <maechler@stat.math.ethz.ch>
48    
49            * R/diagMatrix.R (!): fix typo.
50    
51    2007-01-16  Martin Maechler  <maechler@stat.math.ethz.ch>
52    
53            * R/Auxiliaries.R (as_Csparse): and quite a few others:
54                    allow to pass class definition --> speedup
55            * R/sparseMatrix.R: apply the above
56    
57            * R/Csparse.R: coercion Csparse* to dense* now preserves shape properties.
58    
59            * src/Mutils.h (mMatrix_as_geMatrix): new, based on
60            * src/Mutils.c (dup_mMatrix_as_geMatrix): new; generalization of
61            old dup_mMatrix_as_dgeMatrix), eliminating a long-standing "FIXME".
62    
63            * src/dense.c (dense_to_Csparse): use new mMatrix_as_geMatrix()
64    
65            * R/denseMatrix.R (.dense2C): based on dense_to_Csparse: name it,
66            and use it for "sparse*" as well, since it's faster than the
67            as_Csparse(.) way.
68    
69    2007-01-15  Martin Maechler  <maechler@stat.math.ethz.ch>
70    
71            * R/Ops.R ("Logic"): more methods, notably an  <lgC> o <lgC> one.
72    
73    2007-01-12  Martin Maechler  <maechler@stat.math.ethz.ch>
74    
75            * R/Tsparse.R (.TM.repl.i.2col): new internal function to be used
76            as method for   M[ ij ] <- v
77            * R/Csparse.R:: go via Tsparse for "M[ij] <- v"
78    
79            * R/Ops.R: "Compare" for (C|R)sparse: need pointer slot for all
80            FALSE answer
81    
82            * R/Csparse.R (replCmat): fix the "all non-zero" case with reordering
83            * tests/indexing.R: test it, and some of the above
84    
85    2007-01-05  Martin Maechler  <maechler@stat.math.ethz.ch>
86    
87            * R/Auxiliaries.R (is_duplicatedT): new utility
88    
89    2007-01-05  Douglas Bates  <bates@stat.wisc.edu>
90    
91            * src/init.c (R_init_Matrix): export cholmod_scale
92    
93    2006-12-30  Martin Maechler  <maechler@stat.math.ethz.ch>
94    
95            * R/zzz.R (tmp): for R >= 2.5.0, extend formals of our
96            base::as.matrix to (x, ...)
97    
98    2006-12-28  Martin Maechler  <maechler@stat.math.ethz.ch>
99    
100            * R/Ops.R ("Arith" etc): move almost all "Ops" methods to new R
101            file; start using "Logic", hence
102    
103            * DESCRIPTION (Depends): R >= 2.4.1 (since we want "Logic")
104            * NAMESPACE: import and export "Logic"
105    
106    2006-12-27  Martin Maechler  <maechler@stat.math.ethz.ch>
107    
108            * src/zpotfr.f and dependencies: use LAPACK 3.1 version
109            only needed previously to R version 2.5.0.
110    
111    2006-12-26  Martin Maechler  <maechler@stat.math.ethz.ch>
112    
113            * DESCRIPTION (Date, Version): 0.9975-8, ready for release
114    
115            * R/Tsparse.R (replTmat): fix subassignment of triangular
116            * R/Csparse.R (replCmat): ditto
117            * tests/indexing.R: more tests, incl the above fix
118    
119    2006-12-23  Martin Maechler  <maechler@stat.math.ethz.ch>
120    
121            * R/Auxiliaries.R (drop0): extend for non CSparse
122            * R/Auxiliaries.R (diagU2N): should work for all sparseMatrix
123    
124            * src/Csparse.c (Csparse_to_Tsparse, Csparse_general_to_symmetric):
125                    use uplo correctly (!); other places: use uplo_P() macro
126    
127            * R/Csparse.R (replCmat): call diagU2N() when needed
128            * R/Tsparse.R (replTmat): ditto
129    
130            * src/dtCMatrix.c (tCMatrix_validate): new
131            * src/dtTMatrix.c (tTMatrix_validate): new, used in
132            * R/AllClass.R: for validity of dtC, dsC, and dtT, dsT.
133    
134            * R/diagMatrix.R (replDiag): to use in [<-
135    
136    2006-12-22  Martin Maechler  <maechler@stat.math.ethz.ch>
137    
138            * R/Auxiliaries.R (as_Csparse2, as_geSimpl): new functions;
139                    also more general diagU2N().
140    
141    2006-12-21  Martin Maechler  <maechler@stat.math.ethz.ch>
142    
143            * R/bind2.R: new file for all cbind2(), rbind() methods moved here
144            from R/<foo>Matrix.R files. Better diagonal & improved sparse methods.
145    
146    2006-12-20  Martin Maechler  <maechler@stat.math.ethz.ch>
147    
148            * tests/bind.R: a few more cases
149            * R/Auxiliaries.R (.M.kind): also work for atomic vectors
150    
151            * R/denseMatrix.R (cbind2/rbind2): moved here (and generalized) from
152            * R/ddenseMatrix.R (cbind2/rbind2)
153            * R/Tsparse.R (replTmat): final(?!) fix for "[<-" ..
154            * tests/indexing.R
155            * tests/indexing.Rout.save: updated
156    
157    2006-12-18  Martin Maechler  <maechler@stat.math.ethz.ch>
158    
159            * R/Tsparse.R (replTmat): fixed a remaining "[<-" bug in
160            * tests/indexing.R
161    
162    2006-12-15  Martin Maechler  <maechler@stat.math.ethz.ch>
163    
164            * R/sparseMatrix.R (prSpMatrix): "." alignment much improved:
165            align with proper position of "0", i.e., right for integers.
166            argument 'align' by default is "fancy".
167    
168    2006-12-14  Martin Maechler  <maechler@stat.math.ethz.ch>
169    
170            * R/sparseMatrix.R: delegate "Compare" to "Csparse.."
171            * R/Csparse.R: and fix "Compare" for more cases.
172            * tests/Class+Meth.R: test some of these (m == m, m != m)
173    
174    2006-12-13  Martin Maechler  <maechler@stat.math.ethz.ch>
175    
176            * R/lsparseMatrix.R: all() and any() methods
177            * R/ldenseMatrix.R:      ditto
178            * NAMESPACE, R/Matrix.R: ditto
179    
180            * man/all-methods.Rd: document them minimally
181    
182            * tests/simple.R: add a few examples for these
183    
184    2006-12-11  Martin Maechler  <maechler@stat.math.ethz.ch>
185    
186            * R/Tsparse.R ([): fix long standing typo in symmetric case
187            * man/dsCMatrix-class.Rd: add example exhibiting the above case
188    
189    2006-12-10  Douglas Bates  <bates@stat.wisc.edu>
190    
191            * src/CHMfactor.c (CHMfactor_to_sparse): change LDL factorization
192            to LL before converting to a sparse matrix. (The LDL form can be
193            converted to a sparse matrix but it is implicitly a unit
194            triangular matrix and a diagonal matrix overwritten on the diagonal.)
195    
196    2006-12-09  Douglas Bates  <bates@stat.wisc.edu>
197    
198            * src/chm_common.c (chm_factor_to_SEXP): allocate and fill the Dim slot.
199    
200    2006-12-08  Douglas Bates  <bates@stat.wisc.edu>
201    
202            * DESCRIPTION (Version): updated -> release 0.9975-7
203            * src/{init.c,chm_common.c}, inst/include/*: export cholmod_analyze_p
204    
205    2006-11-30  Martin Maechler  <maechler@stat.math.ethz.ch>
206    
207            * R/diagMatrix.R (%*%): write a direct [diag o Csparse] method
208    
209    2006-11-29  Douglas Bates  <bates@stat.wisc.edu>
210    
211            * src/dgeMatrix.c (dgeMatrix_solve): Check error code from dgetri.
212            * tests/dg_Matrix.R: Add Barry Rowlingson's test of a matrix that
213            is exactly singular.
214    
215    2006-11-07  Martin Maechler  <maechler@stat.math.ethz.ch>
216    
217            * DESCRIPTION (Date): updated -> release 0.9975-6
218    
219    2006-11-06  Martin Maechler  <maechler@stat.math.ethz.ch>
220    
221            * R/Csparse.R (replCmat): symmetric indexing of symmetric matrix
222            now returns symmetric.
223    
224            * R/zzz.R ("diag<-"): replace "diag<-" in base for R <= 2.4.x
225    
226            * R/Matrix.R (.M.sub.i.2col):  new, for  M[ cbind(i,j) ] indexing.
227            * R/Matrix.R (.M.repl.i.2col): new, for  M[ cbind(i,j) ] <- value
228    
229            * R/Auxiliaries.R (.type.kind): added
230    
231    2006-11-04  Martin Maechler  <maechler@stat.math.ethz.ch>
232    
233            * src/cs.[ch]: updated to CSparse Version 2.0.3 by simply
234            running src/CSparse_install.sh
235    
236            * R/denseMatrix.R: "[": keep symmetric on symmetric indexing.
237    
238    2006-11-03  Martin Maechler  <maechler@stat.math.ethz.ch>
239    
240            * src/dsCMatrix.c (dsCMatrix_Csparse_solve): new
241            * R/dsCMatrix.R (solve): "fully-sparse" using the above.
242    
243            * R/AllClass.R: "pMatrix" now also inherits from "generalMatrix"
244    
245            * tests/Class+Meth.R (tstMatrixClass): now assure
246            the (important in method programming) property :
247    
248                    ###>>  Every "Matrix" is either
249                    ###>>  "general*", "symmetric*", "triangular*" or "diagonal*"
250    
251                    (where "*" stands for "Matrix")
252    
253            * R/Auxiliaries.R (diagU2N): now .Call()s Csparse_diagU2N for <Csparse>
254    
255            * R/dMatrix.R (Compare(<dMatrix>,<dMatrix>): update and
256            * tests/validObj.R: checks for "comparison"
257    
258            * R/sparseMatrix.R ([): improved indexing for sparse;
259                    trying to keep <symmetric>[ n, n] symmmetric
260    
261            * tests/indexing.R: indexing for logical sparse now ok
262    
263    
264    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
265    
266            * src/Tsparse.c: use xTsparse_validate() , and hence remove
267    
268            * src/{ltC,lsC,lgT}Matrix.[ch]: removed
269    
270    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
271    
272            * R/AllClass.R (Matrix-class): check length of dimnames in validity.
273    
274            * tests/simple.R: validObject() checking the above.
275    
276            * src/dgCMatrix.c (xCMatrix_validate): new, small and simple,
277            replacing both dgCMatrix_validate and lgCM*.
278    
279            * src/Csparse.c (Csparse_dense_prod, etc): do not lose dimnames;
280            fix dimnames setting in other places.
281            * src/chm_common.c (chm_dense_to_SEXP): now can pass dimnames
282    
283    2006-11-01  Martin Maechler  <maechler@stat.math.ethz.ch>
284    
285            * R/Csparse.R,src/Csparse.c, etc: tcrossprod(<CsparseM>,<CsparseM>)
286    
287            * R/sparseMatrix.R (isSymmetric): drop 'factors' slot for
288            symmetry test, via
289            * R/Auxiliaries.R (.as.dgC.0.factors):
290    
291    2006-11-01  Douglas Bates  <bates@r-project.org>
292    
293            * R/Csparse.R,src/Csparse.c,tests/matprod.R,
294            man/CsparseMatrix-class.Rd: crossprod(<CsparseMatrix>,
295            <CsparseMatrix>) added
296    
297    2006-10-30  Martin Maechler  <maechler@stat.math.ethz.ch>
298    
299            * tests/matprod.R: add a variation of Harri's example
300    
301            * R/dsparseMatrix.R: fix crossprod(<dsparse>, <dge>) to *not*
302            recursive infinitely.
303    
304            * R/dgCMatrix.R: + solve(<sparse>, <sparse>)
305    
306            * tests/indexing.R: add test for the "<" bug fixed 10-27 in R/dMatrix.R
307    
308    2006-10-28  Martin Maechler  <maechler@stat.math.ethz.ch>
309    
310            * tests/Class+Meth.R (tstMatrixClass): more: use non-trivial
311            matrix if possible; test m+m == 2*m; now test dgRMatrix.
312            * R/dgRMatrix.R (.to.dgR): a few more coercions, in order to
313            satisfy the above test.
314    
315    2006-10-27  Martin Maechler  <maechler@stat.math.ethz.ch>
316    
317            * R/Matrix.R (Ops):  <Matrix> o <matrix>  method added
318    
319            * R/dgCMatrix.R: solve(a, b="missing") based on
320            * src/dgCMatrix.c (dgCMatrix_matrix_solve): extend to work with
321            RHS = NULL.
322    
323            * R/diagMatrix.R (diagdiagprod): extend %*% etc to ldiMatrix;
324            add more (needed) [t]crossprod() methods.
325    
326            * man/ddiMatrix-class.Rd: more info, notably on 'diag'
327    
328            * R/Auxiliaries.R (as_CspClass): cleanup
329            (drop0): internal utility for "Csparse_drop(*, 0)"
330            (.bail.out.2): encourage active feedback
331    
332    2006-10-26  Martin Maechler  <maechler@stat.math.ethz.ch>
333    
334            * R/dMatrix.R(Compare): new(), then slots [no validity check]
335    
336            * src/Csparse.c (Csparse_validate): fixed (and more efficient in
337            non-valid or 'sorted' case).
338    
339            * R/dsparseMatrix.R: add "chol" method.
340            * R/ddenseMatrix.R: ditto
341    
342            * R/diagMatrix.R (Ops): group methods for  <diagonal> o <sparse>
343            * NAMESPACE (Ops)
344            * R/diagMatrix.R (diag2T): simple utility used "higher level"
345            coercion; deprecating direct lower level coercions.
346    
347            * R/*.R (seq): use seq_len() and seq_along() where possible.
348    
349    
350    2006-10-23  Martin Maechler  <maechler@stat.math.ethz.ch>
351    
352            * DESCRIPTION (Version): 0.9975-5 ready for release
353    
354    2006-10-20  Douglas Bates  <bates@stat.wisc.edu>
355    
356            * src/init.c (R_init_Matrix): export more cholmod CCallable functions.
357    
358    2006-10-20  Martin Maechler  <maechler@stat.math.ethz.ch>
359    
360            * R/AllClass.R (corMatrix): add 'validity' check;
361                    comment out unused "LDL" class definition
362            * NAMESPACE: mention, but do not export "LDL" class
363            * R/corMatrix.R: new (simple), needed for R-devel with
364            * tests/Class+Meth.R (tstMatrixClass): 1 exception for corMatrix
365              coerce and t() exceptions for all 5 'Mat.MatFact' classes.
366    
367    2006-10-19  Douglas Bates  <bates@stat.wisc.edu>
368    
369            * src/chm_common.h: Add R_cholmod_start to initialize cholmod to
370            use Rprintf and R's error handling.
371    
372    2006-10-17  Martin Maechler  <maechler@stat.math.ethz.ch>
373    
374            * R/diagMatrix.R (%*%): rep(*, each = .) in Matrix %*% diagonal.
375            * tests/matprod.R: add tests for the bug fixed.
376    
377    2006-10-11  Douglas Bates  <bates@stat.wisc.edu>
378    
379            * src/HBMM.[ch]: remove HarwellBoeing format for writing.
380            * src/SOURCES_C.mkf (SOURCES_C): no longer compile iohb.c
381    
382    2006-10-06  Douglas Bates  <bates@stat.wisc.edu>
383    
384            * R/d[gs]CMatrix.R: deprecate the writeHB function.  Use writeMM instead.
385    
386    2006-10-06  Martin Maechler  <maechler@stat.math.ethz.ch>
387    
388            * DESCRIPTION (Version): 0.9975-3
389    
390            * R/diagMatrix.R (bdiag): new function constructing block diagonal
391            (sparse) matrices.
392            * man/bdiag.Rd: docu + examples
393    
394            * R/Csparse.R (replCmat): calling new Csparse_drop() now.
395    
396            * src/Csparse.c (Csparse_general_to_symmetric, Csparse_drop): new functions
397            * R/lsCMatrix.R: three more coercions to lsC (thanks to the above)
398    
399            * R/diagMatrix.R (Diagonal): '[<-' method for diag.matrices such
400            that result is sparse or diagonal (and not dense).
401    
402            * man/Subassign-methods.Rd: fix examples
403    
404            * R/Matrix.R (Matrix):  Matrix(0, *) or Matrix(*, sparse=TRUE)
405            should always return a sparse (and not sometimes a diagonal) matrix.
406    
407    2006-10-05  Martin Maechler  <maechler@stat.math.ethz.ch>
408    
409            * R/Matrix.R ([<-): also for value "Matrix" or "matrix"
410    
411    2006-10-04  Douglas Bates  <bates@stat.wisc.edu>
412    
413            * DESCRIPTION (Version): 0.9975-2
414    
415            * inst/include/Matrix_stubs.c (M_cholmod_sparse_to_triplet): export more symbols
416    
417    2006-10-02  Douglas Bates  <bates@R-project.org>
418    
419            * tests/dg_Matrix.R: Simplify test taking into account new code.
420    
421    2006-09-29  Martin Maechler  <maechler@stat.math.ethz.ch>
422    
423            * R/Csparse.R (replCmat): improve for missing i / j in non-simple cases
424    
425            * R/lsTMatrix.R: new files w/ missing methods
426            * R/nsTMatrix.R:  "  'for completeness'
427    
428            * tests/Class+Meth.R: a bit less 'not.ok.classes'
429    
430            * R/Tsparse.R (t): generalized "t" method from "dgT*" to "Tsparse*"
431    
432    
433    2006-09-28  Douglas Bates  <bates@R-project.org>
434    
435            * src/dppMatrix.h: Ensure definition of dspMatrix_validate is
436            included.
437    
438            * src/init.c, inst/include/{Matrix.h,Matrix_stubs.h,cholmod.h}:
439            Export C-callable functions used in Zt_create in lme4.
440    
441    2006-09-28  Martin Maechler  <maechler@stat.math.ethz.ch>
442    
443            * DESCRIPTION (Version): 0.9975-1
444    
445            * tests/simple.R: less checks fail; using NA, found that our
446                    kronecker() is not base-compatible with NA's.
447    
448            * R/dMatrix.R: "Compare" method now implemented for all cases
449    
450            * R/Auxiliaries.R (indTri): == which([lower/upper].tri( * )) new utility
451    
452            * man/dtpMatrix-class.Rd: mention length of 'x' slot
453    
454            * src/dtpMatrix.c (dtpMatrix_validate): fix check
455            * src/dspMatrix.c (dspMatrix_validate): ditto
456    
457            * R/dtTMatrix.R (gt2tT): fix ("l" -> "n")
458              including coercion to [nl]tTMatrix.
459    
460            * R/diagMatrix.R (show): print a header line as for other classes.
461    
462    2006-09-27  Martin Maechler  <maechler@stat.math.ethz.ch>
463    
464            * src/Makefile.win (SUBDIRS): fix typo
465    
466    2006-09-19  Martin Maechler  <maechler@stat.math.ethz.ch>
467    
468            * DESCRIPTION (Date): ready to release 0.9975-0 to CRAN
469    
470    2006-09-18  Douglas Bates  <bates@stat.wisc.edu>
471    
472            * R/[CT]sparse.R (crossprod and tcrossprod): Handle the cases for x
473            symmetric and y missing in R code using %*% (cholmod_aat doesn't
474            accept a symmetric matrix).
475            * tests/group-methods.R: Uncomment test of crossprod applied to
476            lsCMatrix objects.
477    
478    2006-09-18  Martin Maechler  <maechler@stat.math.ethz.ch>
479    
480            * R/AllClass.R (symmetricMatrix): add validity method (available
481            in C for a long time). Many "n..Matrix": drop (wrong) validity arg.
482    
483            * src/lgCMatrix.c (lgCMatrix_validate): check 'x' slot (!)
484    
485            * tests/indexing.Rout.save:
486            * tests/indexing.R: additions, mainly for 'lsparse'
487    
488            * R/diagMatrix.R (Diagonal) & coercion to lgTMatrix: fixes for NA
489            case.
490    
491            * R/Auxiliaries.R (nz.NA): new utility now used in nnzero()
492    
493    2006-09-16  Martin Maechler  <maechler@stat.math.ethz.ch>
494    
495            * R/sparseMatrix.R (prSpMatrix): print logical NAs "visibly"
496                    as 'N' (1-letter - Ok?)
497    
498            * tests/group-methods.R: add test for logical + NAs
499    
500            * R/dMatrix.R ("Compare"): fix to work with NA's
501    
502            * R/AllClass.R: "Cholesky" etc now inherit from MatrixFactorization.
503    
504            * src/lgCMatrix.c (ncsc_to_matrix): renamed from lcsc_to_matrix()
505                    which is implemented.
506    
507    2006-09-15  Martin Maechler  <maechler@stat.math.ethz.ch>
508    
509            * src/chm_common.c: coerce logical <-> double instead of
510            typecasting;  needed for "l" matrix handling in cholmod.
511    
512            * tests/other-pkgs.R (graph): small extension in "graph" checks.
513    
514            * R/sparseMatrix.R (graphNEL -> Tsparse): method for weight case.
515            (Tsp2grNEL): other fixes needed
516    
517    2006-09-11  Martin Maechler  <maechler@stat.math.ethz.ch>
518    
519            * R/AllClass.R ("nMatrix"): and subclasses for "nonzero pattern"
520                    Matrices, since "lMatrix", also "lsparseM" can have NA
521            * R/ndenseMatrix.R, etc: new source files
522            * man/nsparseMatrix-classes.Rd, etc: new help files
523            * tests/: adaptions
524            * src/chm_common.c (chm_dense_to_SEXP): and others:
525                    new 'Rkind' argument: "l*" and "d*" both use CHOLMOD_REAL
526            * src/Csparse.c, etc: ditto
527    
528    2006-09-11  Douglas Bates  <bates@R-project.org>
529    
530            * src/Mutils.[ch],init.c inst/include/*.h: Move the
531            alloc_d**Matrix functions to the lme4 package.
532    
533    2006-09-09  Douglas Bates  <bates@R-project.org>
534    
535            * src/dsCMatrix.c (dsCMatrix_Cholesky): igoring LDL = FALSE now
536            fixed
537    
538    2006-09-09  Martin Maechler  <maechler@stat.math.ethz.ch>
539    
540            * R/lMatrix.R: new
541    
542            * R/sparseMatrix.R (Tsp2grNEL): do not yet use graph::foo()
543    
544            * R/dgeMatrix.R: do not define tcrossprod() methods for "matrix"
545            * man/tcrossprod.Rd: ditto
546    
547    2006-09-08  Douglas Bates  <bates@stat.wisc.edu>
548    
549            * inst/include/Matrix_stubs.c,Matrix.h: Add declarations and stubs
550            for exported functions
551            * src/Makefile, src/CHOLMOD/Lib/Makefile, src/Metis,CAMD,CCOLAMD:
552            Remove partitioning algorithms for sparse matrix reordering.  The
553            copyright on the Metis code was problematic and the methods were
554            rarely used.
555            * src/triplet_to_col.[ch],MMHB.[ch]: Remove triplet_to_col.  Such
556            operations are now done entirely in CHOLMOD code.
557    
558    2006-09-06  Douglas Bates  <bates@R-project.org>
559    
560            * src/Mutils.h: Remove functions that are no longer used.
561    
562    2006-09-04  Douglas Bates  <bates@R-project.org>
563    
564            * src/dtCMatrix.c (dtCMatrix_validate): rename functions.
565            * src/DEPS.mkf: update
566    
567    2006-09-02  Martin Maechler  <maechler@stat.math.ethz.ch>
568    
569            * created branches/Matrix-for-R-2.3.x;  on trunk: do
570            * DESCRIPTION (Version): 0.9975-0
571            (Depends): R (>= 2.4.0)
572    
573    2006-09-01  Douglas Bates  <bates@R-project.org>
574    
575            * R/sparseMatrix.R: Added direct method to CsparseMatrix from graphNEL
576    
577    2006-09-01  Martin Maechler  <maechler@stat.math.ethz.ch>
578    
579            * R/sparseMatrix.R: add coercion from "ANY" to "sparseMatrix"
580            * R/denseMatrix.R:  add coercion from "ANY" to "denseMatrix"
581    
582            * R/Matrix.R ([): use nargs() to disambiguate M[i] and M[i,]
583    
584    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
585    
586            * R/sparseMatrix.R (Arith): moved Arith group method one-level up
587            from "dsparse" to "sparse" and now go via "Csparse" instead of "dgC"
588            * R/dsparseMatrix.R: ditto
589            * R/Csparse.R: ditto
590    
591    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
592    
593            * R/dMatrix.R (Compare): improve availability of "<", etc
594            * R/Auxiliaries.R (asTuniq): new; also make use of R 2.4.x print(*,max)
595    
596    2006-08-30  Martin Maechler  <maechler@stat.math.ethz.ch>
597    
598            * R/dgCMatrix.R: aargh: "Arith(<dgC>, numeric)" was wrong because
599            of a 0-index which was used as 1-index (..hmm)
600    
601            * R/sparseMatrix.R (prSpMatrix): fix printing an all-0 sparse Matrix
602    
603            * R/Auxiliaries.R (all0, is0): for 0-testing in presence of NA's
604            * R/Auxiliaries.R (isTriMat): use all0() for 0-testing.
605            (.is.diagonal): ditto
606    
607            * R/lgTMatrix.R: as("matrix", "lgTMatrix"): warn about NA's
608    
609            * R/Matrix.R (Matrix): also work for NA data
610    
611    2006-08-28  Martin Maechler  <maechler@stat.math.ethz.ch>
612    
613            * R/Matrix.R (Matrix): + 'forceCheck' argument; dimnames setting
614            in all cases.
615    
616    2006-08-27  Douglas Bates  <bates@R-project.org>
617    
618            * src/dense.[ch],init.c, R/ddenseMatrix.R, man/band.Rd
619            (ddense_band): Added triu, tril and band for ddenseMatrix objects.
620    
621    2006-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>
622    
623            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): added all subclasses of
624            subclasses of "ddenseMatrix"
625            * src/init.c et al: outcomment dtrM*_as_dge* and dsyM*_as_dge*_
626            * R/ddenseMatrix.R et al: setAs("ddenseMatrix", "dgeMatrix", ..)
627            instead of half dozen specialized ones.
628    
629    2006-08-25  Douglas Bates  <bates@R-project.org>
630    
631            * R/lmer.R (qqmath method): Bug fix provided by Emmanuel Tillard
632            <tillard@cirad.fr> - ordering standard errors to match effects.
633    
634    2006-08-24  Douglas Bates  <bates@R-project.org>
635    
636            * src/lsCMatrix.c (lsCMatrix_trans): Remove lsCMatrix_chol based
637            on R_ldl.
638            * R/lCholCMatrix.R,
639            src/[dl]CholCMatrix.[ch],R_ldl.[ch],Metis_utils.[ch]: removed
640            * src/dsCMatrix.c (dsCMatrix_to_dgTMatrix): use CHOLMOD
641            * many files in ./R and ./src: Use more general version of
642            dup_mMatrix_as_dgeMatrix to simplify method definitions.
643            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): Add ddiMatrix,
644            dtpMatrix, dspMatrix and dppMatrix conversions.
645    
646    
647    2006-08-23  Douglas Bates  <bates@R-project.org>
648    
649            * R/AllClass.R,lCholCMatrix.R,src/SOURCES_C.mkf,init.c,NAMESPACE:
650            Remove classes lCholCMatrix and dCholCMatrix based on R_ldl code.
651            * src/dgeMatrix.c: Ensure 'factors' slot exists in result of
652            dgeMatrix_crossprod (may need to do this in other places).
653            * R/AllGeneric.R,dsCMatrix.R, src/dscMatrix.[ch]: Add Cholesky
654            generic and method for dsCMatrix.  Use CHOLMOD for chol().
655    
656    2006-08-22  Douglas Bates  <bates@R-project.org>
657    
658            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): updated for general
659            types of classed Matrices, matrices or numeric or logical vectors.
660            * src/init.c: register dup_mMatrix_as_dgeMatrix for coercions.
661            * src/chm_common.c,Mutils.h (as_cholmod_factor): Move check_class
662            to Mutils.h (as an inline) and change name to Matrix_check_class;
663            fixes in as_cholmod_factor and chm_factor_to_SEXP.
664            * src/dsCMatrix.[ch]: Use CHOLMOD for dsCMatrix_chol and
665            dsCMatrix_matrix_solve.  Comment out vestigial functions.
666            * src/Csparse.c: use diag_P and uplo_P macros.
667    
668    2006-08-21  Douglas Bates  <bates@R-project.org>
669    
670            * src/lmer.c (internal_mer_RZXinv): Fix memory leak caught by
671            valgrind.
672            * tests/matprod.R: Add tests to verify that 'solve' and '%*%' are
673            inverses.
674            * src/sparseQR.c (sparseQR_validate): add new validation test, fix
675            -Wall warnings.
676            * src/dppMatrix.c,dtrMatrix.c,dgCMatrix.c,dgeMatrix.c,dspMatrix.c:
677            Use dup_mMatrix_as_dgeMatrix.
678    
679    2006-08-20  Douglas Bates  <bates@R-project.org>
680    
681            * src/sparseQR.c: Fix thinko in sparseQR_resid_fitted.
682            * tests/sparseQR.R: Added
683            * man/sparseQR-class.Rd: Document methods for qr.* generics
684            * R/sparseQR.R: Return correct # of coefs; fix cut-and-paste errors
685    
686    2006-08-19  Douglas Bates  <bates@R-project.org>
687    
688            * NAMESPACE, R/sparseQR.R, src/init.c,sparseQR.[ch],SOURCES_C.mkf:
689            Added methods for sparseQR for qr.qy, qr.qty, qr.coef, qr.resid
690            and qr.fitted.
691            * src/Mutils.[ch]: Added dup_mMatrix_as_dgeMatrix utility
692            * src/dgCMatrix.c: Check for ordering before storing q in dgCMatrix_QR
693    
694    2006-08-18  Martin Maechler  <maechler@stat.math.ethz.ch>
695    
696            * R/AllGeneric.R: add "qr" and "chol" generics; via 'trick' since
697            the base version has no "..." argument.
698    
699            * R/sparseMatrix.R (prSpMatrix): fix the triangular unit diagonal case.
700    
701            * R/Matrix.R: define and
702            * NAMESPACE: export as.numeric() and as.logical() methods.
703                    Let's hope these do not badly slow down something...
704            Finally export the zapsmall() method.
705    
706    2006-08-17  Douglas Bates  <bates@R-project.org>
707    
708            * src/dgCMatrix.[ch] (dgCMatrix_matrix_solve), src/init.c,
709            R/dgCMatrix.R: solve methods for dgCMatrix and dense RHS.
710            * src/dtCMatrix.c :Remove code that is no longer used
711            * R/dtCMatrix.R: Use C code for diagU2N in CsparseMatrix classes
712    
713    2006-08-14  Douglas Bates  <bates@R-project.org>
714    
715            * src/Csparse.[ch],init.c (Csparse_to_logical): Added utilities
716            Csparse_to_logical and Csparse_symmetric_to_general.
717            * R/dgCMatrix.R,dsCMatrix.R,Csparse.R : Consolidate general
718            coercion methods between CsparseMatrix and TsparseMatrix.
719    
720    2006-08-14  Douglas Bates  <bates@R-project.org>
721    
722            * R/dtCMatrix.R,dgCMatrix.R,Csparse.R src/init.c,dgCMatrix.[ch],
723            Csparse.[ch],chm_common.c,dense.c : Use CHOLMOD code and methods
724            for CsparseMatrix, TsparseMatrix, denseMatrix or matrix when
725            possible.
726    
727    2006-08-12  Douglas Bates  <bates@R-project.org>
728    
729            * src/chm_common.[ch],Csparse.[ch],Tsparse.[ch],CHMfactor.c,dtTMatrix.c,
730              dgTMatrix.c,dgCMatrix.c,dsCMatrix.c,dtTMatrix.c, R/dsTMatrix.R,
731              Tsparse.R,Csparse.R,dgTMatrix.R,dsCMatrix.R,lsCMatrix.R:
732              generalize conversions between TsparseMatrix, CsparseMatrix,
733              denseMatrix and matrix.  Preserve triangularity property and
734              propagate Dimnames in the easy cases.
735    
736    2006-08-10  Douglas Bates  <bates@R-project.org>
737    
738            * src/lmer.c: adjust checks in glmer_init for S4SXP
739            * tests/validObj.R: check of all(eq) should be all(eq@x) - worked
740            before S4SXP but for the wrong reasons.
741    
742    2006-08-08  Douglas Bates  <bates@R-project.org>
743    
744            * src/Csparse.c (Csparse_crossprod): tcrossprod result has stype = -1.
745            Later modified to return the upper triangle only.
746            * R/dgTMatrix.R: Remove vestigial crossprod and tcrossprod methods.
747    
748    2006-08-07  Douglas Bates  <bates@R-project.org>
749    
750            * src/Csparse.c (Csparse_crossprod): Set stype on result to avoid
751            R-level conversion to a sparse symmetric class.
752            * R/Tsparse.R,R/Csparse.R (crossprod and tcrossprod methods):
753            Remove conversion to sparse symmetric classes (now done in C code).
754    
755    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
756    
757            * R/dgCMatrix.R: disable old crossprod and tcrossprod methods
758            * man/band.Rd:  adapt the \dontshow{} unit test.
759    
760    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
761    
762            * DESCRIPTION (Version): 0.995-14  for CRAN
763    
764            * tests/other-pkgs.R: oops: library(Matrix) outside *if* !
765    
766            * R/sparseMatrix.R (Tsp2grNEL): fixed Tsparse -> graph coercion
767            * tests/other-pkgs.R:  more checks, sparseMatrix -> graph
768    
769            * R/Auxiliaries.R (as_Tsparse, as_Rsparse): new
770            * R/Tsparse.R (tril, triu, band): methods
771            * R/dgRMatrix.R (tril, ...):    ditto
772            * man/band.Rd:                  ditto
773    
774    2006-08-04  Martin Maechler  <maechler@stat.math.ethz.ch>
775    
776            * R/Matrix.R (head, tail): directly use utils:::head.matrix
777                    to be up-to-date automatically.
778    
779    2006-08-03  Martin Maechler  <maechler@stat.math.ethz.ch>
780    
781            * DESCRIPTION (Version): 0.995-13 to be released to CRAN
782    
783            * DESCRIPTION (Lazydata): no, instead of 'yes' because it fails for:
784            * data/CAex.R, inst/external/CAex_slots.rda: replacing data/CAex.rda
785            * data/KNex.R, inst/external/KNex_slots.rda: replacing data/KNex.rda
786            such that the S4 objects are always created by the current version
787            of R and 'Matrix' class definitions.
788    
789    2006-08-01  Douglas Bates  <bates@R-project.org>
790    
791            * R/lmer.R (LMEoptimize method), tests/lmer.R,
792            inst/external/test3comp.rda: Added warnings for convergence on
793            boundary and test cases.
794    
795            * src/lmer.c (mer_postVar): Modified to return the variances that
796            are marginal to the fixed effects, not conditional on them (which
797            is what the bVar slot contents represent).
798    
799    2006-07-31  Douglas Bates  <bates@R-project.org>
800    
801            * NAMESPACE, src/lmer.c, R/lmer.R (hatTrace):  Add the hatTrace
802            function which calls the C function mer_hat_trace2.
803    
804            * man/ranef.Rd: Include description of "postVar" argument and
805            producing a caterpillar plot.
806    
807    2006-07-31  Martin Maechler  <maechler@stat.math.ethz.ch>
808    
809            * NAMESPACE:    change  "correlation" to "corMatrix"
810            * R/AllClass.R: to avoid clash with S3 class in 'nlme'.
811            * R/dpoMatrix.R: ditto
812            * R/lmer.R:      ditto
813    
814    2006-07-28  Douglas Bates  <bates@R-project.org>
815    
816            * src/lmer.c (internal_mer_RZXinv): Split the calculation of the
817            RZXinv slot's contents into a separate internal function that can
818            be used in mer_hat_trace.
819    
820    2006-07-22  Martin Maechler  <maechler@stat.math.ethz.ch>
821    
822            * R/Matrix.R: Coercions "Matrix" -> (sparse|dense)Matrix
823            via new smart
824            * R/Auxiliaries.R (as_Csparse, as_dense, .M.shapse): new
825            utility functions.
826    
827    
828    2006-07-21  Martin Maechler  <maechler@stat.math.ethz.ch>
829    
830            * R/Csparse.R (tril, triu, band): do return *triangular* classed
831            matrices when appropriate; band() even symmetric ones.
832            (replCmat): extend to potentially all "CsparseMatrix"
833            * R/Tsparse.R (replTmat): extend to all "TsparseMatrix"; hence
834            allow subassignment for special sparse matrices.
835    
836            * R/Auxiliaries.R (as_geClass): factor out the  .M.kind() functionality
837    
838            * src/lmer.c (mer_MCMCsamp, glmer_MCMCsamp): new 'verbose'
839            argument; in glmer_*(): print only if(verbose).
840    
841            speed-optimize a few places by moving REAL(.) out of loops.
842    
843            * src/lmer.h, src/init.h, R/lmer.R:  related to above.
844    
845    2006-07-20  Martin Maechler  <maechler@stat.math.ethz.ch>
846    
847            * R/Matrix.R("["): disable ("Matrix", i = "logical", j = "missing"),
848                    since that wrongly triggers also for M[ logi , ]
849    
850            * R/denseMatrix.R: "[" methods now also work e.g. when indexing
851            a symmetric matrix that results in a non-symmetric one.
852            * R/Auxiliaries.R (as_geClass): new function used in "[" above.
853    
854            * R/dMatrix.R: make round(M) work as round(M, 0)
855    
856            * R/dgTMatrix.R (image): coordinate system and axis now use
857            1-based indices, not 0-based ones.
858    
859            * R/Tsparse.R (.ind.prep for "["): get rid of max(<empty>) warning.
860            * tests/indexing.R: test it.
861    
862            * NAMESPACE: export isSymmetric(); has been a generic in "base" for a while;
863            * man/isSymmetric-methods.Rd: and document it.
864    
865            * R/SparseM-conv.R: added coercion methods for some 'SparseM' matrices.
866            * man/SparseM-conv.Rd: docu them
867    
868            * tests/other-pkgs.R: renamed from tests/graph.R and add example
869                    for 'SparseM' conversions
870    
871    2006-07-17  Douglas Bates  <Douglas.Bates@R-project.org>
872    
873            * R/Matrix.R (head): added head() and tail() methods.
874    
875    2006-07-17  Martin Maechler  <maechler@stat.math.ethz.ch>
876    
877            * DESCRIPTION (Version): 0.995-12 released to CRAN
878    
879    2006-07-15  Martin Maechler  <maechler@stat.math.ethz.ch>
880    
881            * tests/simple.R: add check for correct dsT -> dgT coercion;
882                    add check for correct printing of symmetric sparse matrices.
883    
884            * R/Auxiliaries.R (non0ind): return *all* non-0 entry indices also
885            for sparse symmetric matrices.
886    
887            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): do not copy the
888            diagonal twice.
889    
890    2006-07-11  Douglas Bates  <Douglas.Bates@R-project.org>
891    
892            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): Fix a case of INTEGER
893            being applied to the x slot (detected by Brian Ripley).
894    
895    2006-07-10  Martin Maechler  <maechler@stat.math.ethz.ch>
896    
897            * src/dgCMatrix.c (dgCMatrix_validate): 'p' slot must have correct length.
898    
899            * R/Auxiliaries.R (isTriC): fix buglet (we were 1-based!)
900    
901    2006-07-08  Martin Maechler  <maechler@stat.math.ethz.ch>
902    
903            * src/lgCMatrix.c (lgCMatrix_diag): new function
904            * R/lgCMatrix.R (diag): for new method
905    
906            * R/AllClass.R (TsparseMatrix): do use Tsparse_validate
907                 ==> construction of illegal "*gTMatrix" via new() should
908                 now be much less easy:
909            * tests/Class+Meth.R: assertError() for some illegal "dgT*"
910    
911            * R/Matrix.R (Matrix): Matrix(0, nrow,ncol) now "goes sparse"
912                    directly.
913            * man/Matrix.Rd: documents it.
914    
915    2006-07-06  Douglas Bates  <bates@R-project.org>
916    
917            * src/pedigree.c (pedigree_inbreeding): Correction in
918            initialization.  This function is not currently being used and is
919            not fully tested.
920    
921            * NAMESPACE, R/{AllClass.R,lmer.R}, src/{init.c,lmer.c}:
922            Introduced the glmer class.  Added code for mcmcmsamp on glmer
923            objects.  Modified validity check on pedigree objects to account
924            for nonparallel patterns of missingness of parents.
925    
926            * man/{lmer-class.Rd,mcmcsamp.Rd}: Update documentation for glmer
927            class.
928    
929    2006-07-01  Martin Maechler  <maechler@stat.math.ethz.ch>
930    
931            * R/pMatrix.R: coercion pMatrix -> Tsparse
932    
933    2006-06-12  Douglas Bates  <bates@R-project.org>
934    
935            * DESCRIPTION (Version): 0.995-11 released to CRAN
936    
937            * R/lmer.R (mcmcsamp method): Corrected arrangments of names on
938            the output from mcmcsamp.
939    
940  2006-06-10  Douglas Bates  <bates@R-project.org>  2006-06-10  Douglas Bates  <bates@R-project.org>
941    
942          * R/lmer.R (simulestimate): added          * R/lmer.R (simulestimate): added C code for calculating the trace
943            of the hat matrix.
944    
945  2006-06-09  Martin Maechler  <maechler@stat.math.ethz.ch>  2006-06-09  Martin Maechler  <maechler@stat.math.ethz.ch>
946    
947          * R/diagMatrix.R (setAs): define coercion methods to sparse matrix          * R/diagMatrix.R (setAs): define coercion methods to sparse matrix
948          classes.          classes.
949            * R/sparseMatrix.R etc: multiplication of diagonal and sparse
950    
951  2006-06-08  Martin Maechler  <maechler@stat.math.ethz.ch>  2006-06-08  Martin Maechler  <maechler@stat.math.ethz.ch>
952    
# Line 43  Line 984 
984    
985          * R/sparseMatrix.R: Matrix <-> graph methods: can no longer use          * R/sparseMatrix.R: Matrix <-> graph methods: can no longer use
986          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.
987          * src/dgTMatrix.c: dito (also: src/init.c src/dgTMatrix.h)          * src/dgTMatrix.c: ditto (also: src/init.c src/dgTMatrix.h)
988    
989    
990  2006-05-17  Douglas Bates  <bates@stat.wisc.edu>  2006-05-17  Douglas Bates  <bates@stat.wisc.edu>
# Line 166  Line 1107 
1107          * 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)
1108          * man/KNex.Rd: and other help files          * man/KNex.Rd: and other help files
1109          * tests/*.R: several ones needed adaption          * tests/*.R: several ones needed adaption
1110          * inst/doc/Comparisons.Rnw: dito          * inst/doc/Comparisons.Rnw: ditto
1111    
1112  2006-03-11  Martin Maechler  <maechler@stat.math.ethz.ch>  2006-03-11  Martin Maechler  <maechler@stat.math.ethz.ch>
1113    
# Line 370  Line 1311 
1311  2005-08-26  Martin Maechler  <maechler@stat.math.ethz.ch>  2005-08-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1312    
1313          * R/Matrix.R:  added first "[<-" methods; not yet functional          * R/Matrix.R:  added first "[<-" methods; not yet functional
1314          * R/denseMatrix.R: dito          * R/denseMatrix.R: ditto
1315          * man/Subassign-methods.Rd: new help file for these          * man/Subassign-methods.Rd: new help file for these
1316    
1317  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.1747

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