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

Legend:
Removed from v.876  
changed lines
  Added in v.1710

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