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 392, Tue Dec 14 20:01:16 2004 UTC revision 2154, Sat Mar 22 21:23:12 2008 UTC
# Line 1  Line 1 
1  2004-12-14  Douglas Bates  <bates@bates1-home>  2008-03-22  Martin Maechler  <maechler@stat.math.ethz.ch>
2    
3            * src/dsCMatrix.c (dsCMatrix_LDL_D): cleanup, also using
4            internal_chm_factor().
5    
6            * R/AllGeneric.R: do *not* define a "chol" generic
7                    (but rather use the implicit one *without* making pivot
8                    part of the signature)
9            * R/*.R: drop the 'pivot' from chol's signature and make
10                    'pivot=FALSE' a default argument of method definitions.
11    
12            * .Rbuildignore: add 'wrld_1deg': I.e. do not put it into released
13            version of Matrix
14    
15    2008-03-18  Martin Maechler  <maechler@stat.math.ethz.ch>
16    
17            * R/Tsparse.R (.T.2.n): drop 0's before coercion to "nMatrix"
18    
19            * R/sparseMatrix.R (is.na): new simple method
20            * R/denseMatrix.R (is.na): ditto.
21    
22            * R/diagMatrix.R (.symDiagonal): newly exported utility.
23    
24            * R/diagMatrix.R (Ops): <diag> * <numeric> should not become dgeMatrix!
25    
26            * src/UFsparse_download.sh: -->
27            * src/CHOLMOD/: update to CHOLMOD version 1.6 (Nov.2007)
28    
29    2008-03-17  Martin Maechler  <maechler@stat.math.ethz.ch>
30    
31            * src/dsCMatrix.c (dsCMatrix_LDL_D): even faster utility with same
32            functionality; barely tested in
33            * tests/factorizing.R
34    
35            * src/Csparse.c (diag_tC): new functionality to enable faster
36            determinant(<dsCMatrix>, .) in
37            * R/dsCMatrix.R
38    
39    2008-03-17 18:53  Douglas Bates <bates@stat.wisc.edu>
40    
41            * R/CHMfactor.R, inst/include/Matrix.h, inst/include/Matrix_stubs.c,
42              src/CHMfactor.c, src/CHMfactor.h,
43              man/CHMfactor-class.Rd, src/init.c, tests/factorizing.R:
44              Log-determinant of the parent matrix from a CHMfactor object as
45              chm_factor_ldetL2; documentation and support
46    
47    2008-03-15  Martin Maechler  <maechler@stat.math.ethz.ch>
48    
49            * R/dsCMatrix.R: enable determinant(<dsCMatrix>, .) via chol(.)
50    
51    2008-03-14  Martin Maechler  <maechler@stat.math.ethz.ch>
52    
53            * R/dsCMatrix.R: setAs(., "dsCMatrix") but with a deprecation
54            warning.
55    
56    2008-03-13  Martin Maechler  <maechler@stat.math.ethz.ch>
57    
58            * DESCRIPTION (Version, Date): bug-fix release 0.999375-6
59    
60            * R/diagMatrix.R (diag2tT.u): utility to be smarter in
61              <diagonal> o <sparse_triangular>
62              setAs(., "nMatrix") added.
63    
64            * R/diagMatrix.R (Diagonal): Diagonal(4, x=3) now works too
65    
66            * R/Auxiliaries.R (.diagU2N): more careful coercion in 2 steps
67                    new argument 'checkDense = FALSE'.
68    
69    
70    2008-03-07  Martin Maechler  <maechler@stat.math.ethz.ch>
71    
72            * src/dgeMatrix.c (dgeMatrix_exp): fix the octave-origin bug in the
73            back-permutation of the matrix exponential.
74    
75            * tests/matr-exp.R: test the fix (for an example where expm() was wrong).
76    
77            * DESCRIPTION (Date,Version): ready to release 0.999375-5
78    
79            * tests/simple.R: testing diagN2U
80    
81    2008-03-06  Martin Maechler  <maechler@stat.math.ethz.ch>
82    
83            * R/Auxiliaries.R (diagN2U): interface to
84    
85            * src/Csparse.c (Csparse_diagN2U): .Call()able SEXP version of chm_diagN2U()
86    
87            * tests/matprod.R: test for triangularity preserving <dtC> %*% <dtC>
88    
89    2008-03-05  Martin Maechler  <maechler@stat.math.ethz.ch>
90    
91            * src/chm_common.c (chm_diagN2U): new utility.
92    
93            * src/Csparse.c (Csparse_Csparse_crossprod, Csparse_Csparse_prod):
94            make use of chm_diagN2U() and hence now preserve triangularity and
95            unit-triangularity.
96    
97            * DESCRIPTION (LicenseDetails): new; such that 'License:' becomes "canonical"
98    
99    2008-03-04  Martin Maechler  <maechler@stat.math.ethz.ch>
100    
101            * R/diagMatrix.R (subDiag): fix when x[..] became a vector
102    
103            * src/Tsparse.c (Tsparse_diagU2N): new utility, necessary for e.g.
104            * src/Csparse.c (Csparse_crossprod): use [CT]sparse_diagU2N() !!
105    
106            * R/Auxiliaries.R (.diagU2N): make use of new Tsparse_diagU2N
107    
108            * R/Ops.R ("-" (<sparseMatrix>)): use diagU2N()
109    
110            * src/chm_common.c (AS_CHM_FINISH): add note about problem
111            for triangular (diag = "U").
112    
113    2008-02-21  Martin Maechler  <maechler@stat.math.ethz.ch>
114    
115            * R/Auxiliaries.R (as_Csparse2): drop this, replacing by
116            * R/bind.R:  .Call(dense_to_Csparse, *)
117    
118    2008-02-20  Martin Maechler  <maechler@stat.math.ethz.ch>
119    
120            * R/Matrix.R (Matrix): no longer use coercions to specific classes
121                    (since we are discouraging them in user code).
122    
123            * tests/*.R: also replaces coercions to specific classes by
124            coercions to super classes.
125    
126            * R/denseMatrix.R (.dense2C): simplified by using forceSymmetric()
127    
128    
129    2008-02-19  Martin Maechler  <maechler@stat.math.ethz.ch>
130    
131            * man/CAex.Rd: example: coerce to symmetric*, not dsC*
132    
133            * src/dense.c (dense_band): generalized from ddense_band
134    
135            * R/ddenseMatrix.R (.trilDense,.triuDense, .bandDense):
136              now for "denseMatrix" (instead of just "ddense*"); much
137              simplified setMethod()s for these.
138    
139            * src/dense.c (dense_to_symmetric): generalized from ddense_*
140    
141    2008-02-18  Martin Maechler  <maechler@stat.math.ethz.ch>
142    
143            * R/AllGeneric.R: forceSymmetric() generic: fast no-checking
144            version of as(*, "symmetricMatric").
145    
146            * src/dense.c (ddense_to_symmetric): add 'symm_test' argument, and
147            * R/symmetricMatrix.R: set it TRUE in coercion to "symmetricMatrix"
148    
149    2008-02-16  Martin Maechler  <maechler@stat.math.ethz.ch>
150    
151            * R/Matrix.R (subset.ij): utility, as first step to faster
152               M [ <ij-matrix> ] indexing.
153    
154            * R/Matrix.R (.M.sub.i.logical): M[ <logical> ] : try better.
155    
156            * src/dense.c (ddense_symmpart, ddense_skewpart): new functions
157            for more efficient symmpart() and skewpart() methods.
158    
159            * src/Mutils.c (equal_string_vectors): utility
160    
161            * src/dense.c (ddense_to_symmetric): new function used in
162    
163            * R/symmetricMatrix.R: setAs(., "symmetricMatrix")
164    
165            * R/sparseMatrix.R, et_al (isSymmetric): add '...' to formals, in
166            order to match the generic (and evade .local(..)).
167    
168            * R/dsCMatrix.R: dgC -> dsC: use C code!
169    
170            * NAMESPACE, R/AllGeneric.R (symmpart, skewpart): new functions
171            as per TODO
172    
173            * R/Auxiliaries.R (setZero, all0Matrix): new utilities
174    
175            * R/symmetricMatrix.R: obvious symmpart(), skewpart() methods
176    
177    
178    2008-02-15  Martin Maechler  <maechler@stat.math.ethz.ch>
179    
180            * R/Ops.R (.Arith.Csparse): use diagU2N when needed in triangular
181    
182            * R/Auxiliaries.R (non0.i): take out of non0ind
183    
184            * R/ddenseMatrix.R (.trilDense, .triuDense, .bandDense):
185            make tril(), triu(), band() work for "matrix" and all "dense*"
186    
187            * R/triangularMatrix.R (.tri[lu].tr): need .diagU2N(*)
188            * tests/simple.R: test the fix above
189    
190            * R/sparseMatrix.R ([): simplification: no coerce to <general>
191                    before we use as(., <Tsparse>)[...] anyway
192    
193            * R/Rsparse.R (.viaC.to.R): mostly instead of .viaC.to.dgR()
194    
195            * R/triangularMatrix.R (isTriangular): methods for all subclasses
196            instead of "triangularMatrix" -- just to disambiguate
197    
198    2008-02-14  Martin Maechler  <maechler@stat.math.ethz.ch>
199    
200            * tests/Class+Meth.R (dotestMat): add m[FALSE, FALSE] { <-> TODO}
201            * tests/indexing.R: example that fails above
202    
203    2008-01-26  Martin Maechler  <maechler@stat.math.ethz.ch>
204    
205            * R/Matrix.R (.M.sub.i.2col): fix for logical matrix indexing
206            * R/Tsparse.R (.TM.sub.i.2col, .TM.repl.i.2col): ditto;
207                    now, M[lower.tri(M)] and  M[lower.tri(M)] <- v  work better
208    
209            * src/Tsparse.c (Tsparse_to_tCsparse): new fast utility.
210            * src/Tsparse.h, init.c: ditto
211            * R/Auxiliaries.R (isTriT): new; faster than going via Csparse
212                 both isTriC() and isTriT() now return TRUE with "kind" or FALSE.
213            * R/sparseMatrix.R (isTriangular): hence simplified
214    
215    2008-01-24  Martin Maechler  <maechler@stat.math.ethz.ch>
216    
217            * R/Ops.R (.Arith.Csparse): new utility factored out of former
218              <dgC> o <dgC>, extended for triangular and also used in  <dtC> o <dtC>.
219    
220    2008-01-23  Martin Maechler  <maechler@stat.math.ethz.ch>
221    
222            * tests/factorizing.R (checkSchur): and more tests for checking Schur()
223    
224            * inst/test-tools.R (isOrthogonal): new function; also file restructured
225    
226    2008-01-22  Martin Maechler  <maechler@stat.math.ethz.ch>
227    
228            * R/ngTMatrix.R: allow as(<numeric matrix>, "ngTMatrix") and hence
229            coercion to "nMatrix" and "pMatrix"
230    
231            * R/AllClass.R: "Schur" class;  "number" class union
232            * man/number-class.Rd:
233            * man/Schur-class.Rd:
234    
235            * R/eigen.R (.dgeSchur): utility, and return "Schur" class
236            (.simpleSchur): Schur() method for diagonal matrices
237            (.triSchur):    Schur() method for triangular matrices
238            (Schur.sym):    Schur() for symmetric matrices {building on eigen()}.
239    
240    
241    2008-01-21  Martin Maechler  <maechler@stat.math.ethz.ch>
242    
243            * src/dgCMatrix.c (dgCMatrix_QR): set @Dim slot (as per doc)
244    
245    2008-01-15  Martin Maechler  <maechler@stat.math.ethz.ch>
246    
247            * R/CHMfactor.R (solve): method for b="numeric", but also b="ANY"
248                    in order to ensure 'system = *' is not lost;
249                    formals()$system instead of cut&paste.
250            * tests/factorizing.R: test solve(<CHM..>, <numeric>)
251    
252    2008-01-11  Martin Maechler  <maechler@stat.math.ethz.ch>
253    
254            * DESCRIPTION (Date): make ready for release --> 0.999375-4
255    
256            * R/dgeMatrix.R: fix rcond() method for "dgeMatrix".
257    
258    2007-12-08  Martin Maechler  <maechler@stat.math.ethz.ch>
259    
260            * R/pMatrix.R: as(*, "matrix") now returns 0/1 *integer* matrix,
261                    and hence does as.vector(.).
262            * man/pMatrix-class.Rd: docs
263            * R/sparseMatrix.R: fix for printing "integer sparse"
264    
265            * tests/Class+Meth.R (tstMatrixClass): test M[FALSE], M[2] etc
266    
267            * R/Matrix.R and others: use "exact" function argument list for
268                    both "["   : (x, i,j, ..., drop)
269                    and  "[<-" : (x, i,j, ..., value)
270    
271            * R/denseMatrix.R: M[i] and M[i] <- v  (i vector) now work
272            * R/Tsparse.R (replTmat):    ditto
273            * R/diagMatrix.R (replDiag): ditto
274            * R/Csparse.R (replCmat):    ditto {was it worth the pain?}
275            * tests/indexing.R: testing the above
276    
277    2007-12-07  Martin Maechler  <maechler@stat.math.ethz.ch>
278    
279            * R/sparseMatrix.R (cov2cor): method for sparse matrices
280    
281            * R/diagMatrix.R ([<-): fix   D[ cbind(i,j) ] <- v
282    
283            * R/bind2.R: fix for Rsparse* and rbind2(dense,dense)
284    
285            * tests/Class+Meth.R: test cbind2, rbind2  and  diag<-
286    
287    2007-12-06  Martin Maechler  <maechler@stat.math.ethz.ch>
288    
289            * R/Matrix.R: "generic" cov2cor() method
290    
291            * R/nearPD.R: new 'only.values', 'keepDiag' arguments;
292                    speed up Q %*% D %*% t(Q)
293            * tests/dpoMatrix.R: test nearPD()
294    
295    2007-12-05  Doug Bates and Martin Maechler
296    
297            * R/sparseMatrix.R: xtabs(*, sparse=.) function; an extention of
298            stats::xtabs() allowing to create sparse matrices.
299    
300    2007-10-08  Martin Maechler  <maechler@stat.math.ethz.ch>
301    
302            * DESCRIPTION (Version): *-4 (released *-3 two days ago)
303    
304    2007-10-06  Martin Maechler  <maechler@stat.math.ethz.ch>
305    
306            * R/pMatrix.R: solve(<Matrix>, <pMatrix>)
307    
308    2007-10-05  Martin Maechler  <maechler@stat.math.ethz.ch>
309    
310            * R/LU.R: solve() method for "denseLU"
311    
312    2007-10-01  Martin Maechler  <maechler@stat.math.ethz.ch>
313    
314            * DESCRIPTION (Version): 0.999375-3 preparing for release
315    
316            * R/AllGeneric.R: simplify  if(.) .. else .. for R <= 2.5.1
317    
318            * R/Matrix.R (Matrix): .Internal(matrix(..)) different for R >= 2.7.0
319    
320    2007-09-26  Martin Maechler  <maechler@stat.math.ethz.ch>
321    
322            * R/pMatrix.R (.m.mult.pMat): fix <matrix> %*% <pMatrix>,
323              thanks to Kasper Kristensen.
324            * tests/matprod.R: regression test for that.
325    
326    2007-09-23 17:32  Douglas Bates <bates@stat.wisc.edu>
327    
328            * [r4778] R/AllGeneric.R: Check R version before defining generics for
329              primitives
330    
331    2007-09-13  Martin Maechler  <maechler@stat.math.ethz.ch>
332    
333            * R/denseMatrix.R (rcond): method
334            * R/sparseQR.R (rcond): method, use x or t(x)
335    
336    2007-09-12  Martin Maechler  <maechler@stat.math.ethz.ch>
337    
338            * R/dgeMatrix.R (rcond): method: work via qr.R() for non-square
339            matrices.
340            * R/sparseMatrix.R: Ditto for all other rcond() method definitions.
341    
342            * man/rcond.Rd: mention the more general definition, and add
343            example for non-square matrices.
344    
345            * man/chol.Rd: new file, for the S4 chol() generic and all methods.
346    
347    2007-09-11  Martin Maechler  <maechler@stat.math.ethz.ch>
348    
349            * R/sparseQR.R: add qr.R() method [to be used for rcond()]
350    
351    2007-09-01  Martin Maechler  <maechler@stat.math.ethz.ch>
352    
353            * R/Matrix.R ([<-): add (Matrix,missing,ANY,Matrix) etc
354            * tests/indexing.R: add new regression for the above cases.
355    
356    2007-08-30  Martin Maechler  <maechler@stat.math.ethz.ch>
357    
358            * src/Mutils.h (__sun): clause for alloca.h on Solaris
359    
360    2007-08-16  Martin Maechler  <maechler@stat.math.ethz.ch>
361    
362            * DESCRIPTION (Date, Version): 0.999375-2
363    
364    2007-08-15  Martin Maechler  <maechler@stat.math.ethz.ch>
365    
366            * R/HBMM.R (readMM): make work for pattern matrices as well
367    
368    2007-08-14 13:07  Douglas Bates <bates@stat.wisc.edu>
369    
370            * [r4730] src/Mutils.h: declare alloca
371            * [r4734] NAMESPACE, R/AllGeneric.R, R/Csparse.R, R/HBMM.R, R/Tsparse.R,
372              R/dgCMatrix.R, R/dgTMatrix.R, R/dsCMatrix.R, R/dsTMatrix.R,
373              man/externalFormats.Rd, src/Csparse.c, src/Csparse.h, src/DEPS.mkf,
374              src/HBMM.c, src/HBMM.h, src/Mutils.h, src/SOURCES_C.mkf, src/init.c,
375              src/mmio.c, src/mmio.h: Remove deprecated function writeHB and its
376              methods; switch writeMM to use CHOLMOD code; repair readMM
377    
378    2007-08-14  Martin Maechler  <maechler@stat.math.ethz.ch>
379    
380            * R/nearPD.R, man/nearPD.Rd (nearPD): new function built on Jens
381            Oehlschlaegel's ... result type still to be discussed!
382    
383    2007-08-10  Martin Maechler  <maechler@stat.math.ethz.ch>
384    
385            * man/image-methods.Rd: new, combining all image() methods
386    
387    2007-08-09  Martin Maechler  <maechler@stat.math.ethz.ch>
388    
389            * R/dgCMatrix.R: define qr() and lu() methods for "sparseMatrix"
390            to work via dgC...
391    
392            * R/Matrix.R (Matrix): special treatment for "table" (S3)
393    
394    2007-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
395    
396            * R/dgTMatrix.R (image): change defaults to
397                    aspect = "iso", colorkey = FALSE
398    
399    2007-08-06  Martin Maechler  <maechler@stat.math.ethz.ch>
400    
401            * src/dsyMatrix.c (dsyMatrix_matrix_mm): 'b' might be matrix;
402            must copy its *expanded* x slot before LAPACK call.
403    
404            * tests/matprod.R: test the last days' changes.
405    
406    2007-08-06 16:43  Douglas Bates <bates@stat.wisc.edu>
407    
408            * [r4712] inst/include/Matrix_stubs.c: Change R_cholmod_printf in stubs
409              as well as in sources
410            * [r4713] src/dsyMatrix.c: Duplicate the contents of the RHS before
411              Lapack call
412    
413    2007-08-03  Martin Maechler  <maechler@stat.math.ethz.ch>
414    
415            * R/Matrix.R (%*%, crossprod, tcrossprod): add method for
416                    ("Matrix", "matrix") which is needed in some cases.
417            Ditto for solve().
418    
419            * R/colSums.R (.as.dge.Fun): need ddenseMatrix methods to avoid
420            infinite recursion in dispatch for some cases.
421    
422    2007-08-02 08:48  Martin Maechler <maechler@stat.math.ethz.ch>
423    
424            * [r4693] src/chm_common.c: R_cholmod_printf() instead of Rprintf() just
425              so pointers match
426    
427    2007-08-02  Martin Maechler  <maechler@stat.math.ethz.ch>
428    
429            * DESCRIPTION (Date): set ready for release -- 0.999375-1
430    
431    2007-08-01 15:44  Douglas Bates <bates@stat.wisc.edu>
432    
433            * [r4686] inst/include/Matrix.h, inst/include/Matrix_stubs.c,
434              src/chm_common.c, src/chm_common.h: Change API for
435              numeric_as_chm_dense and N_AS_CHM_DN
436    
437    2007-08-01  Martin Maechler  <maechler@stat.math.ethz.ch>
438    
439            * src/dtrMatrix.c (dtrMatrix_matrix_mm): fix dimensionality check (!)
440            * tests/matprod.R: regr.test for it
441    
442    2007-07-20  Martin Maechler  <maechler@stat.math.ethz.ch>
443    
444            * R/dMatrix.R: fix from Brian for   Math2(., digits = "missing")
445            * tests/group-methods.R: and regression-test it
446    
447    2007-07-19 19:45  Douglas Bates <bates@stat.wisc.edu>
448    
449            * [r4642] inst/include/Matrix.h, inst/include/Matrix_stubs.c,
450              inst/include/cholmod.h, src/chm_common.c, src/init.c: Export
451              triplet_to_sparse, documentation, use typedefs
452    
453    2007-07-18  Martin Maechler  <maechler@stat.math.ethz.ch>
454    
455            * man/dpoMatrix-class.Rd: added 'corMatrix' example
456    
457            * src/dsyMatrix.[ch] (dsyMatrix_as_matrix): new 'keep_dimnames' arg
458            * src/dtrMatrix.[ch] (dtrMatrix_as_matrix): ditto
459            * src/init.c, R/dsyMatrix.R, R/dtrMatrix.R, R/lgTMatrix.R: ditto
460    
461            * R/lsparseMatrix.R: bug fix in "all" method
462            * R/Ops.R (.do.Logic.lsparse): "|" bug in borderline case
463    
464            * R/dsyMatrix.R (coerce->dsTMatrix): (i,j) slots should *not* have names
465            * R/ngTMatrix.R (coerce->ngTMatrix): ditto;
466                    + matrix |-> nMatrix coercion
467            * R/pMatrix.R: + setAs()  to dMatrix and from nMatrix
468            * man/pMatrix-class.Rd: ditto
469    
470            * R/Matrix.R (Summary): method for non-dMatrix
471    
472            * tests/Class+Meth.R (extraValid): new check about "dirty" slots
473            * tests/Class+Meth.R (tstMatrixClass): test norm(.);
474                    test all Summary methods.
475    
476    2007-07-16  Martin Maechler  <maechler@stat.math.ethz.ch>
477    
478            * R/dgeMatrix.R (norm, rcond): methods for 'matrix'
479    
480    2007-07-14  Martin Maechler  <maechler@stat.math.ethz.ch>
481    
482            * R/sparseMatrix.R (norm): simple methods for sparseMatrix
483    
484            * R/pMatrix.R (t?crossprod): methods for pMatrix
485    
486    2007-07-10  Douglas Bates  <bates@stat.wisc.edu>
487    
488            * src/dgeMatrix.c (dgeMatrix_colsums): Get the logic straight.
489    
490    2007-07-09 20:45  Douglas Bates <bates@stat.wisc.edu>
491    
492            * [r4579] src/dgeMatrix.c: Untangle horrible code in dgeMatrix_colsums
493              trying to fix a subtle bug - which has been somewhere else.
494    
495    2007-07-09 19:43  Martin Maechler <maechler@stat.math.ethz.ch>
496    
497            * [r4578] src/dgeMatrix.c: "cleaned" dgeMatrix_colsums() - but did not
498              solve the bug
499    
500    2007-07-08  Martin Maechler  <maechler@stat.math.ethz.ch>
501    
502            * src/dgCMatrix.c (compressed_to_TMatrix):
503    
504    2007-07-07  Martin Maechler  <maechler@stat.math.ethz.ch>
505    
506            * src/Csparse.c (Rsparse_validate): new, to have some validity
507            checking for RsparseMatrix
508            * src/dgCMatrix.c (xRMatrix_validate): ditto
509            * src/dtCMatrix.c (tRMatrix_validate): ditto
510    
511    2007-07-07  Douglas Bates <bates@stat.wisc.edu>
512    
513            * [r4567] R/AllClass.R: Slots already in RsparseMatrix were redefined in
514              lgRMatrix
515            * [r4568] DESCRIPTION: Prepare for bug-fix release
516            * [r4570] src/CHOLMOD/Check/cholmod_write.c: Include cholmod_matrixops.h
517              for declaration of cholmod_symmetry
518    
519    2007-07-06  Martin Maechler  <maechler@stat.math.ethz.ch>
520    
521            * DESCRIPTION (Version): 0.999375 merged into the trunk; ready for
522            release.
523    
524    2007-07-06 14:11  Douglas Bates <bates@stat.wisc.edu>
525    
526            * [r4559] src/iohb.c, src/iohb.h: Remove Harwell-Boeing input/output
527              functions - no longer used
528            * [r4560] src/HBMM.c, src/Mutils.c, src/dgTMatrix.c, src/dgeMatrix.c,
529              src/dspMatrix.c, src/dsyMatrix.c, src/dtCMatrix.c,
530              src/factorizations.c, src/sparseQR.c: Replace most calls to Calloc by
531              Alloca
532    
533    2007-07-06 13:14  Martin Maechler <maechler@stat.math.ethz.ch>
534    
535            * [r4558] inst/doc/Comparisons.Rnw, src/CHMfactor.c, src/Csparse.c,
536              src/Tsparse.c, src/chm_common.c, src/chm_common.h, src/dense.c,
537              src/dgCMatrix.c, src/dsCMatrix.c, src/dtTMatrix.c, src/sparseQR.c,
538              src/t_gCMatrix_colSums.c: more R_CheckStack()s
539    
540    2007-07-05 18:12  Douglas Bates <bates@stat.wisc.edu>
541    
542            * [r4550] inst/include/Matrix.h: Add the macro N_AS_CHM_DN to "alloca"
543              the required amount of memory then call M_numeric_as_chm_dense.
544            * [r4556] src/Mutils.h, src/dgCMatrix.c: Define and use the Alloca macro
545              (like Calloc but calling alloca)
546    
547    2007-07-05  Martin Maechler  <maechler@stat.math.ethz.ch>
548    
549            * R/sparseMatrix.R (printSpMatrix): renamed from prSpMatrix()
550            and extended with more sophisticated 'col.names' option.
551            * NAMESPACE: export  printSparseMatrix()
552            * man/printSpMatrix.Rd: document, incl. examples
553    
554    2007-07-04 16:21  Douglas Bates <bates@stat.wisc.edu>
555    
556            * [r4543] src/cs_utils.c, src/cs_utils.h, src/dgCMatrix.c,
557              src/dtCMatrix.c, src/sparseQR.c: CSP typedef for *cs and macro
558              AS_CSP. API change - pass the empty structure to Matrix_as_cs.
559    
560    2007-07-04  Martin Maechler  <maechler@stat.math.ethz.ch>
561    
562            * DESCRIPTION (Version): 0.99875-4
563    
564            * tests/Class+Meth.R (tstMatrixClass): add dimnames, and hence test
565            some dimnames perservation.
566    
567            * R/dsTMatrix.R (t-method): keep dimnames
568            * R/dtTMatrix.R:  ditto
569    
570            * R/sparseMatrix.R (prSpMatrix): print colnames when non-trivial
571            and ncol(.) < 10
572    
573            * src/cs_utils.c: drop check_class() and use Matrix_check_class()
574            from Mutils.h
575    
576            * src/lgCMatrix.c ([ln]csc_to_matrix): no longer lose dimnames,
577            e.g. in as(<ngCMatrix>, "matrix")
578    
579    2007-07-01 13:27  Douglas Bates <bates@stat.wisc.edu>
580    
581            * [r4529] .: Create a branch for the API changes from the 0.99875
582              series to the 0.999375 series
583            * [r4530] DESCRIPTION, inst/include/Matrix.h,
584              inst/include/Matrix_stubs.c, src/CHMfactor.c, src/Csparse.c,
585              src/Mutils.h, src/Tsparse.c, src/chm_common.c, src/chm_common.h,
586              src/dense.c, src/dgCMatrix.c, src/dsCMatrix.c, src/dtTMatrix.c,
587              src/t_gCMatrix_colSums.c: API change - pass the empty structure to the
588              as_cholmod_x functions
589    
590    2007-06-30 09:05  Martin Maechler <maechler@stat.math.ethz.ch>
591    
592            * [r4527] trunk/Matrix/DESCRIPTION, trunk/Matrix/NAMESPACE,
593              trunk/Matrix/inst/doc/Comparisons.Rnw: add session- and hardware-info
594              to Comparisons
595    
596    >>>>>>> .merge-right.r4561
597    2007-06-29  Martin Maechler  <maechler@stat.math.ethz.ch>
598    
599            * DESCRIPTION (Version): 0.99875-3 ready to be released.
600    
601            * R/sparseMatrix.R (spMatrix): make spMatrix(3,4) working
602    
603            * R/AllGeneric.R: set "Math" (and "Math2") group generics in a way
604            that should also work in a future version of R.
605    
606    2007-06-21  Martin Maechler  <maechler@stat.math.ethz.ch>
607    
608            * NAMESPACE, R/AllClass.R: "xsparseVector" class union.
609    
610            * R/sparseVector.R: more *sparseVector coercions, notably for
611            non - double ones.
612    
613    2007-06-19  Martin Maechler  <maechler@stat.math.ethz.ch>
614    
615            * R/colSums.R: new file for all (col|row)(Sums|Means) methods,
616              notably the new ones building on the new .Call(.)s:
617    
618            * src/dgCMatrix.c (DEF_gCMatrix_COLSUMS): use to define
619            all 4 of [dlin]gCMatrix_colSums().
620    
621    2007-06-18 16:12  Douglas Bates <bates@stat.wisc.edu>
622    
623            * [r4472] src/Syms.h, src/init.c: Added Matrix_lengthSym
624            * [r4473] src/dgCMatrix.c: Modified dgCMatrix_colSums for sparseVector
625              result
626    
627    2007-06-16  Martin Maechler  <maechler@stat.math.ethz.ch>
628    
629            * R/kronecker.R: fix typo (could lead to inf.recursion)
630            * test/simple.R: testing that
631    
632            * R/sparseMatrix.R (prSpMatrix): change to be used as print()
633            method as well (which can have arguments, show() can't).
634    
635    2007-06-16 15:52  Douglas Bates <bates@stat.wisc.edu>
636    
637            * [r4466] R/dgCMatrix.R, src/dgCMatrix.c, src/dgCMatrix.h, src/init.c:
638              added dgCMatrix_colSums for [col,row][Sums,Means]
639    
640    2007-06-15 23:15  Douglas Bates <bates@stat.wisc.edu>
641    
642            * [r4460] R/sparseMatrix.R, man/dgCMatrix-class.Rd, src/dgCMatrix.c,
643              src/dgCMatrix.h, src/init.c: added lm.fit.sparse (unexported),
644              coercion of "factor" to "dgCMatrix" and dgCMatrix_cholsol
645            * [r4461] R/AllClass.R, man/sparseMatrix-class.Rd: draft "indicators"
646              class
647            * [r4463] R/sparseMatrix.R, man/dgCMatrix-class.Rd,
648              man/sparseMatrix-class.Rd: Don't need an "indicators" class - use the
649              row names to store the levels - duh!  Added an example.
650    
651    2007-06-14  Martin Maechler  <maechler@stat.math.ethz.ch>
652    
653            * src/Csparse.c (Csparse_validate): check for *repeated* entries
654            thanks to example from Christian Buchta; with a test here:
655            * tests/simple.R:
656    
657    2007-06-07  Martin Maechler  <maechler@stat.math.ethz.ch>
658    
659            * R/Auxiliaries.R (callGeneric): another fix, needed for some cases
660            of colSums(*, sparseResult = TRUE)
661    
662    2007-06-06  Martin Maechler  <maechler@stat.math.ethz.ch>
663    
664            * R/lsparseMatrix.R, R/ldenseMatrix.R (all, any): change default to
665            'na.rm = FALSE' as "everywhere" else in R.
666    
667    2007-06-05 Douglas Bates <bates@stat.wisc.edu>
668    
669            * [r4421] src/CSparse_install.sh: Modify for new organization of
670              CSparse package
671            * [r4425] src/UFsparse_download.sh: Update to version 3.0.0 of
672              SuiteSparse
673            * [r4426] src/Makefile: add ./UFconfig to the include path for
674              compilation
675            * [r4427] src/cs.[ch]: update to CSparse version 2.2.0
676            * [r4428] inst/doc/UFsparse/* src/{AMD,CHOLMOD,COLAMD}/*
677              src/UFconfig/UFconfig.h: Update to version 3.0.0 of SuiteSparse
678    
679    2007-06-05  Martin Maechler  <maechler@stat.math.ethz.ch>
680    
681            * R/Auxiliaries.R (emptyColnames): + argument msg.if.not.empty, used in
682            * R/sparseMatrix.R (prSpMatrix): now gives a message about
683            suppressed column names.
684    
685    2007-06-04 17:13  Douglas Bates <bates@stat.wisc.edu>
686    
687            * [r4418] src/Csparse.c, src/HBMM.c, src/Mutils.c, src/Mutils.h,
688              src/Tsparse.c, src/chm_common.c, src/chm_common.h, src/dgCMatrix.c,
689              src/dgeMatrix.c, src/dpoMatrix.c, src/dpoMatrix.h, src/dppMatrix.c,
690              src/dppMatrix.h, src/dsCMatrix.c, src/dspMatrix.c, src/dspMatrix.h,
691              src/dsyMatrix.c, src/dsyMatrix.h, src/dtpMatrix.c, src/dtrMatrix.c:
692              Remove warnings after change to const char* CHAR
693    
694    2007-06-04 17:11  Douglas Bates <bates@stat.wisc.edu>
695    
696            * [r4417] inst/include/Matrix_stubs.c, inst/include/cholmod.h: Corrected
697              type of M_cholmod_ssmult
698    
699    2007-06-03 14:42  Douglas Bates <bates@stat.wisc.edu>
700    
701            * [r4412] inst/include/Matrix_stubs.c, inst/include/cholmod.h,
702              src/init.c: Yet another cholmod export - cholmod_ssmult
703    
704    2007-05-23  Martin Maechler  <maechler@stat.math.ethz.ch>
705    
706            * NAMESPACE: exported drop0(), since
707            * man/drop0.Rd: I have seen several cases, I really wanted to use
708            it, so our users may want too.
709    
710    2007-05-22  Martin Maechler  <maechler@stat.math.ethz.ch>
711    
712            * man/colSums.Rd: separately document colSums() etc, since these
713            have the extra argument 'sparseResult'.
714    
715    2007-05-21  Martin Maechler  <maechler@stat.math.ethz.ch>
716    
717            * R/sparseMatrix.R (spMatrix): utility (T)sparse Matrix constructor;
718            * man/spMatrix.Rd: docu., including examples
719    
720            * R/Auxiliaries.R (sp.colMeans): etc, using a patched callGeneric(),
721            in order to make colMeans() etc fast *and* correct.
722            * R/sparseVector.R (replSPvec): "[<-" functionality for
723            sparseVectors; tested in
724            * tests/simple.R:
725    
726    2007-05-19  Martin Maechler  <maechler@stat.math.ethz.ch>
727    
728            * R/sparseMatrix.R (print.sparseSummary): and summary() method for
729            (very) sparse Matrices; output similar to Matlab's print().
730    
731    2007-05-17  Douglas Bates  <bates@stat.wisc.edu>
732    
733            * src/HBMM.c (Matrix_writeMatrixMarket): Write 1-based, not
734            0-based, indices (Jose Quesada <quesada@gmail.com>).
735    
736    2007-05-16  Douglas Bates  <bates@stat.wisc.edu>
737    
738            * R/CHMfactor.R: Added solve methods for a CHMfactor object.
739    
740    2007-05-16  Martin Maechler  <maechler@stat.math.ethz.ch>
741    
742            * R/Auxiliaries.R (sparsapply): new utility, much faster than
743            tapply1() for large sparse matrices.
744    
745    2007-05-15  Martin Maechler  <maechler@stat.math.ethz.ch>
746    
747            * R/Matrix.R (dim<-): reshape now via sparseVector.
748    
749            * R/sparseVector.R: methods and function for
750            * R/AllClass.R: new "sparseVector" class and daughters.
751            * NAMESPACE: export new classes
752    
753    2007-05-14  Martin Maechler  <maechler@stat.math.ethz.ch>
754    
755            * DESCRIPTION (Version): 0.99875-1
756            * src/Makefile.win: also remove Lapack code from here (cf. 04-25).
757    
758    2007-05-11  Martin Maechler  <maechler@stat.math.ethz.ch>
759    
760            * R/Tsparse.R ([, Tsparse): fix last case: *duplicated*, symmetric
761            indexing
762            * tests/indexing.R: test set for that.
763    
764    2007-05-08  Martin Maechler  <maechler@stat.math.ethz.ch>
765    
766            * R/Tsparse.R (replTmat): fix the case of *duplicated* index
767            entries.
768            * tests/indexing.R(out): add regression test for it
769    
770    2007-04-30  Martin Maechler  <maechler@stat.math.ethz.ch>
771    
772            * R/(l(dense|sparse))?Matrix.R (!): use 'x', not 'e1' as argument
773            name for "!" method definitions.
774    
775    2007-04-26  Martin Maechler  <maechler@stat.math.ethz.ch>
776    
777            * R/Tsparse.R (intI): new utility, used for "[" :
778                    Cleanup up there, and fixes for duplicated indices - more TODO!
779    
780            * tests/indexing.R(out): more tests
781    
782    2007-04-25  Douglas Bates  <bates@stat.wisc.edu>
783    
784            * DESCRIPTION,src/Makefile: require R>= 2.5.0 and remove Lapack
785            code that is now part of the R Lapack library.
786    
787            * src/init.c,inst/include/{Matrix_stubs.c,cholmod.h}:export
788            cholmod_factorize_p (used in lme4 for GLMMs and NLMMs).
789    
790    2007-04-21  Martin Maechler  <maechler@stat.math.ethz.ch>
791    
792            * R/Matrix.R (image): method for all Matrices, not just sparse ones.
793    
794    2007-04-17  Martin Maechler  <maechler@stat.math.ethz.ch>
795    
796            * R/Auxiliaries.R (tapply1): unname(.) -> colSums() etc don't end
797            up with extraneous names '0'...'<n-1>'
798    
799    2007-04-12  Martin Maechler  <maechler@stat.math.ethz.ch>
800    
801            * R/dgTMatrix.R (mat2dgT): care about NAs
802    
803    2007-04-11  Martin Maechler  <maechler@stat.math.ethz.ch>
804    
805            * R/kronecker.R: triangularity preserving methods
806    
807    2007-03-27  Martin Maechler  <maechler@stat.math.ethz.ch>
808    
809            * R/kronecker.R: new file collecting kronecker() methods in one
810                    place.  Goal: become much faster!
811    
812    2007-03-23  Martin Maechler  <maechler@stat.math.ethz.ch>
813    
814            * src/dtCMatrix.c (dtCMatrix_solve): use the new code from Kasper
815            Kristensen based cs_spsolve() instead of _lsolve & _usolve which
816            can be much faster.
817    
818            * tests/matprod.R: add regression tests for these (upper & lower).
819    
820    2007-03-19  Martin Maechler  <maechler@stat.math.ethz.ch>
821    
822            * R/Matrix.R (diff): method for our Matrices.
823    
824            * R/sparseMatrix.R (isDiagonal): check dim()!
825    
826    2007-03-17  Martin Maechler  <maechler@stat.math.ethz.ch>
827    
828            * R/Matrix.R (dim<-): new method for "reshape()" built on a
829            proposal from Tamas Papp.
830    
831    2007-03-16  Martin Maechler  <maechler@stat.math.ethz.ch>
832    
833            * R/AllGeneric.R: remove all  if(!isGeneric(.))  clauses
834    
835            * R/zzz.R (.onLoad, .onUnload): do *not* leave bind_activation(TRUE);
836            rather define and export  cBind() and rBind() only.
837            --> useRs *must* change code that used to have cbind()/rbind() !!
838    
839            * R/bind.R: change tests from cbind() to cBind() and similarly to rBind()
840            * R/bind.Rout.save: ditto
841    
842    2007-02-16  Douglas Bates  <bates@r-project.org>
843    
844            * DESCRIPTION (Date, Version): 0.9975-11 with new date
845            * src/dgCMatrix.c (R_to_CMatrix, compressed_to_TMatrix): remove
846            const modifier on declaration of the array 'valid'
847    
848    2007-02-12  Douglas Bates  <bates@stat.wisc.edu>
849    
850            * R/CHMfactor.R: Add image method (coercion to sparseMatrix).
851    
852    2007-02-05  Martin Maechler  <maechler@stat.math.ethz.ch>
853    
854            * DESCRIPTION (Date, Version): 0.9975-10 with new date.
855    
856            * R/Ops.R (Arith): make sure Csparse o Csparse also works for e.g. ntCMatrix
857            * tests/simple.R: test the above and some of these coercions:
858    
859            * R/nsparseMatrix.R: coercing "Csparse" to "lsparseMatrix";
860                    be careful to avoid infinite recursion, using new coercions in
861            * R/ngCMatrix.R and nsC... and ntC...
862            * R/lsparseMatrix.R: ditto
863    
864            * R/SparseM-conv.R: more conversion, notably for triplet matrices.
865    
866            * src/dgCMatrix.c (R_to_C_Matrix): port Doug's fix and
867            * R/Rsparse.R: reactivate .Call()s
868    
869            * tests/Class+Meth.R: a bit more on actual classes
870    
871    2007-02-04  Douglas Bates  <bates@stat.wisc.edu>
872    
873            * src/dgCMatrix.c (compressed_to_TMatrix): fix memory bug using strdup()
874    
875    2007-02-03  Martin Maechler  <maechler@stat.math.ethz.ch>
876    
877            * DESCRIPTION (Version): 0.9975-10 to upload
878    
879            * tests/Class+Meth.R (tstMatrixClass): require coercions to
880            specific classes less unconditionally.
881    
882            * R/Auxiliaries.R: get rid of as_Tsparse() and as_Rsparse()
883    
884            * R/Tsparse.R (triu): etc, use as(*, "TsparseMatrix") instead of as_Tsparse()
885    
886            * R/Rsparse.R (.R.2.T): R-level workaround using compressed_to_TMatrix.
887            * R/Rsparse.R (.R.2.C): R-level workaround since C-level
888            R_to_CMatrix segfaults on one platform.
889            Eliminate most coercion method to *specific* classes, and replace
890            with virtual classes coercions.
891    
892    
893    2007-02-01  Martin Maechler <maechler@stat.math.ethz.ch>
894    
895            * src/init.c: export the CHM...._validate() placeholders, since
896            they *are* called.
897    
898            * tests/Class+Meth.R (classCanCoerce): and starting to test
899            all as(<from>, <to>)
900    
901    2007-01-30  Martin Maechler  <maechler@stat.math.ethz.ch>
902    
903            * R/Tsparse.R ([): more care when subsetting triangular Tsparse
904            * tests/indexing.R: tested now
905            * tests/indexing.Rout.save: updated
906    
907            * src/Csparse.c (Csparse_to_dense): use Rkind = -1 for PATTERN to
908            * src/chm_common.c (chm_dense_to_SEXP): return "ngeMatrix" when
909            appropriate.
910    
911            * NAMESPACE: export a trivial
912            * R/Matrix.R: drop() Matrix-method
913    
914            * R/AllClass.R: moved all prototypes to virtual super classes.
915    
916            * R/Rsparse.R: many more coercions to have less exceptions in
917            * tests/Class+Meth.R:
918    
919            * R/Ops.R (Compare): tweak for case with NA
920            * tests/simpl.R: hence another 'FIXME' eliminated
921    
922    2007-01-29  Martin Maechler  <maechler@stat.math.ethz.ch>
923    
924            * R/diagMatrix.R (solve): the obvious methods for diagonalMatrix
925            objects.
926    
927            * tests/Class+Meth.R (tstMatrixClass): now testing diag(), nnzero(),
928              and more of "!", "&", "|", all, any; coercions
929    
930            * R/Rsparse.R: many coercions (which enable quite a few other
931            methods), thanks to enhancements in
932            * src/dgCMatrix.c (R_to_CMatrix): new, and
933            * src/dgCMatrix.c (compressed_to_TMatrix): now for (d,l,n) ,
934            symmetric & triangular and ..RMatrix objects.
935    
936            * src/TMatrix_as.c (Matrix_T_as_DENSE,Matrix_T_as_GENERAL):
937            renamed file from src/dsTMatrix.c;
938            now dealing with symmetric and triangular Tsparse coercions, both
939            to dense and general.
940    
941    2007-01-27  Martin Maechler  <maechler@stat.math.ethz.ch>
942    
943            * src/dsTMatrix.c: has now "l" and "n" methods besides the "d" ones.
944    
945            * R/Ops.R (Arith): <dgCMatrix> o <numeric> now remains sparse
946            where sensible when the <numeric> is of length > 1.
947    
948    2007-01-26  Martin Maechler  <maechler@stat.math.ethz.ch>
949    
950            * R/Matrix.R ([<-): for M[] <- value: fix length
951    
952    2007-01-25  Martin Maechler  <maechler@stat.math.ethz.ch>
953    
954            * R/Auxiliaries.R (n2l_Matrix): new, to be used in
955            * R/ndenseMatrix.R: new coercions n* -> l*
956    
957    2007-01-22  Martin Maechler  <maechler@stat.math.ethz.ch>
958    
959            * R/triangularMatrix.R: new file; simple triu() and tril() methods.
960    
961            * R/Ops.R ("Logic"): and other "Ops", many updates
962    
963    2007-01-18  Martin Maechler  <maechler@stat.math.ethz.ch>
964    
965            * src/Mutils.h (SET_DimNames): new utility
966    
967            * R/Auxiliaries.R (nnzero): improved and now exported via
968    
969            * NAMESPACE: + nnzero(); length() == prod(dim(.)) method for all "Matrix" objects
970    
971    2007-01-17  Martin Maechler  <maechler@stat.math.ethz.ch>
972    
973            * R/diagMatrix.R (!): fix typo.
974    
975    2007-01-16  Martin Maechler  <maechler@stat.math.ethz.ch>
976    
977            * R/Auxiliaries.R (as_Csparse): and quite a few others:
978                    allow to pass class definition --> speedup
979            * R/sparseMatrix.R: apply the above
980    
981            * R/Csparse.R: coercion Csparse* to dense* now preserves shape properties.
982    
983            * src/Mutils.h (mMatrix_as_geMatrix): new, based on
984            * src/Mutils.c (dup_mMatrix_as_geMatrix): new; generalization of
985            old dup_mMatrix_as_dgeMatrix), eliminating a long-standing "FIXME".
986    
987            * src/dense.c (dense_to_Csparse): use new mMatrix_as_geMatrix()
988    
989            * R/denseMatrix.R (.dense2C): based on dense_to_Csparse: name it,
990            and use it for "sparse*" as well, since it's faster than the
991            as_Csparse(.) way.
992    
993    2007-01-15  Martin Maechler  <maechler@stat.math.ethz.ch>
994    
995            * R/Ops.R ("Logic"): more methods, notably an  <lgC> o <lgC> one.
996    
997    2007-01-12  Martin Maechler  <maechler@stat.math.ethz.ch>
998    
999            * R/Tsparse.R (.TM.repl.i.2col): new internal function to be used
1000            as method for   M[ ij ] <- v
1001            * R/Csparse.R:: go via Tsparse for "M[ij] <- v"
1002    
1003            * R/Ops.R: "Compare" for (C|R)sparse: need pointer slot for all
1004            FALSE answer
1005    
1006            * R/Csparse.R (replCmat): fix the "all non-zero" case with reordering
1007            * tests/indexing.R: test it, and some of the above
1008    
1009    2007-01-05  Martin Maechler  <maechler@stat.math.ethz.ch>
1010    
1011            * R/Auxiliaries.R (is_duplicatedT): new utility
1012    
1013    2007-01-05  Douglas Bates  <bates@stat.wisc.edu>
1014    
1015            * src/init.c (R_init_Matrix): export cholmod_scale
1016    
1017    2006-12-30  Martin Maechler  <maechler@stat.math.ethz.ch>
1018    
1019            * R/zzz.R (tmp): for R >= 2.5.0, extend formals of our
1020            base::as.matrix to (x, ...)
1021    
1022    2006-12-28  Martin Maechler  <maechler@stat.math.ethz.ch>
1023    
1024            * R/Ops.R ("Arith" etc): move almost all "Ops" methods to new R
1025            file; start using "Logic", hence
1026    
1027            * DESCRIPTION (Depends): R >= 2.4.1 (since we want "Logic")
1028            * NAMESPACE: import and export "Logic"
1029    
1030    2006-12-27  Martin Maechler  <maechler@stat.math.ethz.ch>
1031    
1032            * src/zpotfr.f and dependencies: use LAPACK 3.1 version
1033            only needed previously to R version 2.5.0.
1034    
1035    2006-12-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1036    
1037            * DESCRIPTION (Date, Version): 0.9975-8, ready for release
1038    
1039            * R/Tsparse.R (replTmat): fix subassignment of triangular
1040            * R/Csparse.R (replCmat): ditto
1041            * tests/indexing.R: more tests, incl the above fix
1042    
1043    2006-12-23  Martin Maechler  <maechler@stat.math.ethz.ch>
1044    
1045            * R/Auxiliaries.R (drop0): extend for non CSparse
1046            * R/Auxiliaries.R (diagU2N): should work for all sparseMatrix
1047    
1048            * src/Csparse.c (Csparse_to_Tsparse, Csparse_general_to_symmetric):
1049                    use uplo correctly (!); other places: use uplo_P() macro
1050    
1051            * R/Csparse.R (replCmat): call diagU2N() when needed
1052            * R/Tsparse.R (replTmat): ditto
1053    
1054            * src/dtCMatrix.c (tCMatrix_validate): new
1055            * src/dtTMatrix.c (tTMatrix_validate): new, used in
1056            * R/AllClass.R: for validity of dtC, dsC, and dtT, dsT.
1057    
1058            * R/diagMatrix.R (replDiag): to use in [<-
1059    
1060    2006-12-22  Martin Maechler  <maechler@stat.math.ethz.ch>
1061    
1062            * R/Auxiliaries.R (as_Csparse2, as_geSimpl): new functions;
1063                    also more general diagU2N().
1064    
1065    2006-12-21  Martin Maechler  <maechler@stat.math.ethz.ch>
1066    
1067            * R/bind2.R: new file for all cbind2(), rbind() methods moved here
1068            from R/<foo>Matrix.R files. Better diagonal & improved sparse methods.
1069    
1070    2006-12-20  Martin Maechler  <maechler@stat.math.ethz.ch>
1071    
1072            * tests/bind.R: a few more cases
1073            * R/Auxiliaries.R (.M.kind): also work for atomic vectors
1074    
1075            * R/denseMatrix.R (cbind2/rbind2): moved here (and generalized) from
1076            * R/ddenseMatrix.R (cbind2/rbind2)
1077            * R/Tsparse.R (replTmat): final(?!) fix for "[<-" ..
1078            * tests/indexing.R
1079            * tests/indexing.Rout.save: updated
1080    
1081    2006-12-18  Martin Maechler  <maechler@stat.math.ethz.ch>
1082    
1083            * R/Tsparse.R (replTmat): fixed a remaining "[<-" bug in
1084            * tests/indexing.R
1085    
1086    2006-12-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1087    
1088            * R/sparseMatrix.R (prSpMatrix): "." alignment much improved:
1089            align with proper position of "0", i.e., right for integers.
1090            argument 'align' by default is "fancy".
1091    
1092    2006-12-14  Martin Maechler  <maechler@stat.math.ethz.ch>
1093    
1094            * R/sparseMatrix.R: delegate "Compare" to "Csparse.."
1095            * R/Csparse.R: and fix "Compare" for more cases.
1096            * tests/Class+Meth.R: test some of these (m == m, m != m)
1097    
1098    2006-12-13  Martin Maechler  <maechler@stat.math.ethz.ch>
1099    
1100            * R/lsparseMatrix.R: all() and any() methods
1101            * R/ldenseMatrix.R:      ditto
1102            * NAMESPACE, R/Matrix.R: ditto
1103    
1104            * man/all-methods.Rd: document them minimally
1105    
1106            * tests/simple.R: add a few examples for these
1107    
1108    2006-12-11  Martin Maechler  <maechler@stat.math.ethz.ch>
1109    
1110            * R/Tsparse.R ([): fix long standing typo in symmetric case
1111            * man/dsCMatrix-class.Rd: add example exhibiting the above case
1112    
1113    2006-12-10  Douglas Bates  <bates@stat.wisc.edu>
1114    
1115            * src/CHMfactor.c (CHMfactor_to_sparse): change LDL factorization
1116            to LL before converting to a sparse matrix. (The LDL form can be
1117            converted to a sparse matrix but it is implicitly a unit
1118            triangular matrix and a diagonal matrix overwritten on the diagonal.)
1119    
1120    2006-12-09  Douglas Bates  <bates@stat.wisc.edu>
1121    
1122            * src/chm_common.c (chm_factor_to_SEXP): allocate and fill the Dim slot.
1123    
1124    2006-12-08  Douglas Bates  <bates@stat.wisc.edu>
1125    
1126            * DESCRIPTION (Version): updated -> release 0.9975-7
1127            * src/{init.c,chm_common.c}, inst/include/*: export cholmod_analyze_p
1128    
1129    2006-11-30  Martin Maechler  <maechler@stat.math.ethz.ch>
1130    
1131            * R/diagMatrix.R (%*%): write a direct [diag o Csparse] method
1132    
1133    2006-11-29  Douglas Bates  <bates@stat.wisc.edu>
1134    
1135            * src/dgeMatrix.c (dgeMatrix_solve): Check error code from dgetri.
1136            * tests/dg_Matrix.R: Add Barry Rowlingson's test of a matrix that
1137            is exactly singular.
1138    
1139    2006-11-07  Martin Maechler  <maechler@stat.math.ethz.ch>
1140    
1141            * DESCRIPTION (Date): updated -> release 0.9975-6
1142    
1143    2006-11-06  Martin Maechler  <maechler@stat.math.ethz.ch>
1144    
1145            * R/Csparse.R (replCmat): symmetric indexing of symmetric matrix
1146            now returns symmetric.
1147    
1148            * R/zzz.R ("diag<-"): replace "diag<-" in base for R <= 2.4.x
1149    
1150            * R/Matrix.R (.M.sub.i.2col):  new, for  M[ cbind(i,j) ] indexing.
1151            * R/Matrix.R (.M.repl.i.2col): new, for  M[ cbind(i,j) ] <- value
1152    
1153            * R/Auxiliaries.R (.type.kind): added
1154    
1155    2006-11-04  Martin Maechler  <maechler@stat.math.ethz.ch>
1156    
1157            * src/cs.[ch]: updated to CSparse Version 2.0.3 by simply
1158            running src/CSparse_install.sh
1159    
1160            * R/denseMatrix.R: "[": keep symmetric on symmetric indexing.
1161    
1162    2006-11-03  Martin Maechler  <maechler@stat.math.ethz.ch>
1163    
1164            * src/dsCMatrix.c (dsCMatrix_Csparse_solve): new
1165            * R/dsCMatrix.R (solve): "fully-sparse" using the above.
1166    
1167            * R/AllClass.R: "pMatrix" now also inherits from "generalMatrix"
1168    
1169            * tests/Class+Meth.R (tstMatrixClass): now assure
1170            the (important in method programming) property :
1171    
1172                    ###>>  Every "Matrix" is either
1173                    ###>>  "general*", "symmetric*", "triangular*" or "diagonal*"
1174    
1175                    (where "*" stands for "Matrix")
1176    
1177            * R/Auxiliaries.R (diagU2N): now .Call()s Csparse_diagU2N for <Csparse>
1178    
1179            * R/dMatrix.R (Compare(<dMatrix>,<dMatrix>): update and
1180            * tests/validObj.R: checks for "comparison"
1181    
1182            * R/sparseMatrix.R ([): improved indexing for sparse;
1183                    trying to keep <symmetric>[ n, n] symmmetric
1184    
1185            * tests/indexing.R: indexing for logical sparse now ok
1186    
1187    
1188    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
1189    
1190            * src/Tsparse.c: use xTsparse_validate() , and hence remove
1191    
1192            * src/{ltC,lsC,lgT}Matrix.[ch]: removed
1193    
1194    2006-11-02  Martin Maechler  <maechler@stat.math.ethz.ch>
1195    
1196            * R/AllClass.R (Matrix-class): check length of dimnames in validity.
1197    
1198            * tests/simple.R: validObject() checking the above.
1199    
1200            * src/dgCMatrix.c (xCMatrix_validate): new, small and simple,
1201            replacing both dgCMatrix_validate and lgCM*.
1202    
1203            * src/Csparse.c (Csparse_dense_prod, etc): do not lose dimnames;
1204            fix dimnames setting in other places.
1205            * src/chm_common.c (chm_dense_to_SEXP): now can pass dimnames
1206    
1207    2006-11-01  Martin Maechler  <maechler@stat.math.ethz.ch>
1208    
1209            * R/Csparse.R,src/Csparse.c, etc: tcrossprod(<CsparseM>,<CsparseM>)
1210    
1211            * R/sparseMatrix.R (isSymmetric): drop 'factors' slot for
1212            symmetry test, via
1213            * R/Auxiliaries.R (.as.dgC.0.factors):
1214    
1215    2006-11-01  Douglas Bates  <bates@r-project.org>
1216    
1217            * R/Csparse.R,src/Csparse.c,tests/matprod.R,
1218            man/CsparseMatrix-class.Rd: crossprod(<CsparseMatrix>,
1219            <CsparseMatrix>) added
1220    
1221    2006-10-30  Martin Maechler  <maechler@stat.math.ethz.ch>
1222    
1223            * tests/matprod.R: add a variation of Harri's example
1224    
1225            * R/dsparseMatrix.R: fix crossprod(<dsparse>, <dge>) to *not*
1226            recursive infinitely.
1227    
1228            * R/dgCMatrix.R: + solve(<sparse>, <sparse>)
1229    
1230            * tests/indexing.R: add test for the "<" bug fixed 10-27 in R/dMatrix.R
1231    
1232    2006-10-28  Martin Maechler  <maechler@stat.math.ethz.ch>
1233    
1234            * tests/Class+Meth.R (tstMatrixClass): more: use non-trivial
1235            matrix if possible; test m+m == 2*m; now test dgRMatrix.
1236            * R/dgRMatrix.R (.to.dgR): a few more coercions, in order to
1237            satisfy the above test.
1238    
1239    2006-10-27  Martin Maechler  <maechler@stat.math.ethz.ch>
1240    
1241            * R/Matrix.R (Ops):  <Matrix> o <matrix>  method added
1242    
1243            * R/dgCMatrix.R: solve(a, b="missing") based on
1244            * src/dgCMatrix.c (dgCMatrix_matrix_solve): extend to work with
1245            RHS = NULL.
1246    
1247            * R/diagMatrix.R (diagdiagprod): extend %*% etc to ldiMatrix;
1248            add more (needed) [t]crossprod() methods.
1249    
1250            * man/ddiMatrix-class.Rd: more info, notably on 'diag'
1251    
1252            * R/Auxiliaries.R (as_CspClass): cleanup
1253            (drop0): internal utility for "Csparse_drop(*, 0)"
1254            (.bail.out.2): encourage active feedback
1255    
1256    2006-10-26  Martin Maechler  <maechler@stat.math.ethz.ch>
1257    
1258            * R/dMatrix.R(Compare): new(), then slots [no validity check]
1259    
1260            * src/Csparse.c (Csparse_validate): fixed (and more efficient in
1261            non-valid or 'sorted' case).
1262    
1263            * R/dsparseMatrix.R: add "chol" method.
1264            * R/ddenseMatrix.R: ditto
1265    
1266            * R/diagMatrix.R (Ops): group methods for  <diagonal> o <sparse>
1267            * NAMESPACE (Ops)
1268            * R/diagMatrix.R (diag2T): simple utility used "higher level"
1269            coercion; deprecating direct lower level coercions.
1270    
1271            * R/*.R (seq): use seq_len() and seq_along() where possible.
1272    
1273    
1274    2006-10-23  Martin Maechler  <maechler@stat.math.ethz.ch>
1275    
1276            * DESCRIPTION (Version): 0.9975-5 ready for release
1277    
1278    2006-10-20  Douglas Bates  <bates@stat.wisc.edu>
1279    
1280            * src/init.c (R_init_Matrix): export more cholmod CCallable functions.
1281    
1282    2006-10-20  Martin Maechler  <maechler@stat.math.ethz.ch>
1283    
1284            * R/AllClass.R (corMatrix): add 'validity' check;
1285                    comment out unused "LDL" class definition
1286            * NAMESPACE: mention, but do not export "LDL" class
1287            * R/corMatrix.R: new (simple), needed for R-devel with
1288            * tests/Class+Meth.R (tstMatrixClass): 1 exception for corMatrix
1289              coerce and t() exceptions for all 5 'Mat.MatFact' classes.
1290    
1291    2006-10-19  Douglas Bates  <bates@stat.wisc.edu>
1292    
1293            * src/chm_common.h: Add R_cholmod_start to initialize cholmod to
1294            use Rprintf and R's error handling.
1295    
1296    2006-10-17  Martin Maechler  <maechler@stat.math.ethz.ch>
1297    
1298            * R/diagMatrix.R (%*%): rep(*, each = .) in Matrix %*% diagonal.
1299            * tests/matprod.R: add tests for the bug fixed.
1300    
1301    2006-10-11  Douglas Bates  <bates@stat.wisc.edu>
1302    
1303            * src/HBMM.[ch]: remove HarwellBoeing format for writing.
1304            * src/SOURCES_C.mkf (SOURCES_C): no longer compile iohb.c
1305    
1306    2006-10-06  Douglas Bates  <bates@stat.wisc.edu>
1307    
1308            * R/d[gs]CMatrix.R: deprecate the writeHB function.  Use writeMM instead.
1309    
1310    2006-10-06  Martin Maechler  <maechler@stat.math.ethz.ch>
1311    
1312            * DESCRIPTION (Version): 0.9975-3
1313    
1314            * R/diagMatrix.R (bdiag): new function constructing block diagonal
1315            (sparse) matrices.
1316            * man/bdiag.Rd: docu + examples
1317    
1318            * R/Csparse.R (replCmat): calling new Csparse_drop() now.
1319    
1320            * src/Csparse.c (Csparse_general_to_symmetric, Csparse_drop): new functions
1321            * R/lsCMatrix.R: three more coercions to lsC (thanks to the above)
1322    
1323            * R/diagMatrix.R (Diagonal): '[<-' method for diag.matrices such
1324            that result is sparse or diagonal (and not dense).
1325    
1326            * man/Subassign-methods.Rd: fix examples
1327    
1328            * R/Matrix.R (Matrix):  Matrix(0, *) or Matrix(*, sparse=TRUE)
1329            should always return a sparse (and not sometimes a diagonal) matrix.
1330    
1331    2006-10-05  Martin Maechler  <maechler@stat.math.ethz.ch>
1332    
1333            * R/Matrix.R ([<-): also for value "Matrix" or "matrix"
1334    
1335    2006-10-04  Douglas Bates  <bates@stat.wisc.edu>
1336    
1337            * DESCRIPTION (Version): 0.9975-2
1338    
1339            * inst/include/Matrix_stubs.c (M_cholmod_sparse_to_triplet): export more symbols
1340    
1341    2006-10-02  Douglas Bates  <bates@R-project.org>
1342    
1343            * tests/dg_Matrix.R: Simplify test taking into account new code.
1344    
1345    2006-09-29  Martin Maechler  <maechler@stat.math.ethz.ch>
1346    
1347            * R/Csparse.R (replCmat): improve for missing i / j in non-simple cases
1348    
1349            * R/lsTMatrix.R: new files w/ missing methods
1350            * R/nsTMatrix.R:  "  'for completeness'
1351    
1352            * tests/Class+Meth.R: a bit less 'not.ok.classes'
1353    
1354            * R/Tsparse.R (t): generalized "t" method from "dgT*" to "Tsparse*"
1355    
1356    
1357    2006-09-28  Douglas Bates  <bates@R-project.org>
1358    
1359            * src/dppMatrix.h: Ensure definition of dspMatrix_validate is
1360            included.
1361    
1362            * src/init.c, inst/include/{Matrix.h,Matrix_stubs.h,cholmod.h}:
1363            Export C-callable functions used in Zt_create in lme4.
1364    
1365    2006-09-28  Martin Maechler  <maechler@stat.math.ethz.ch>
1366    
1367            * DESCRIPTION (Version): 0.9975-1
1368    
1369            * tests/simple.R: less checks fail; using NA, found that our
1370                    kronecker() is not base-compatible with NA's.
1371    
1372            * R/dMatrix.R: "Compare" method now implemented for all cases
1373    
1374            * R/Auxiliaries.R (indTri): == which([lower/upper].tri( * )) new utility
1375    
1376            * man/dtpMatrix-class.Rd: mention length of 'x' slot
1377    
1378            * src/dtpMatrix.c (dtpMatrix_validate): fix check
1379            * src/dspMatrix.c (dspMatrix_validate): ditto
1380    
1381            * R/dtTMatrix.R (gt2tT): fix ("l" -> "n")
1382              including coercion to [nl]tTMatrix.
1383    
1384            * R/diagMatrix.R (show): print a header line as for other classes.
1385    
1386    2006-09-27  Martin Maechler  <maechler@stat.math.ethz.ch>
1387    
1388            * src/Makefile.win (SUBDIRS): fix typo
1389    
1390    2006-09-19  Martin Maechler  <maechler@stat.math.ethz.ch>
1391    
1392            * DESCRIPTION (Date): ready to release 0.9975-0 to CRAN
1393    
1394    2006-09-18  Douglas Bates  <bates@stat.wisc.edu>
1395    
1396            * R/[CT]sparse.R (crossprod and tcrossprod): Handle the cases for x
1397            symmetric and y missing in R code using %*% (cholmod_aat doesn't
1398            accept a symmetric matrix).
1399            * tests/group-methods.R: Uncomment test of crossprod applied to
1400            lsCMatrix objects.
1401    
1402    2006-09-18  Martin Maechler  <maechler@stat.math.ethz.ch>
1403    
1404            * R/AllClass.R (symmetricMatrix): add validity method (available
1405            in C for a long time). Many "n..Matrix": drop (wrong) validity arg.
1406    
1407            * src/lgCMatrix.c (lgCMatrix_validate): check 'x' slot (!)
1408    
1409            * tests/indexing.Rout.save:
1410            * tests/indexing.R: additions, mainly for 'lsparse'
1411    
1412            * R/diagMatrix.R (Diagonal) & coercion to lgTMatrix: fixes for NA
1413            case.
1414    
1415            * R/Auxiliaries.R (nz.NA): new utility now used in nnzero()
1416    
1417    2006-09-16  Martin Maechler  <maechler@stat.math.ethz.ch>
1418    
1419            * R/sparseMatrix.R (prSpMatrix): print logical NAs "visibly"
1420                    as 'N' (1-letter - Ok?)
1421    
1422            * tests/group-methods.R: add test for logical + NAs
1423    
1424            * R/dMatrix.R ("Compare"): fix to work with NA's
1425    
1426            * R/AllClass.R: "Cholesky" etc now inherit from MatrixFactorization.
1427    
1428            * src/lgCMatrix.c (ncsc_to_matrix): renamed from lcsc_to_matrix()
1429                    which is implemented.
1430    
1431    2006-09-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1432    
1433            * src/chm_common.c: coerce logical <-> double instead of
1434            typecasting;  needed for "l" matrix handling in cholmod.
1435    
1436            * tests/other-pkgs.R (graph): small extension in "graph" checks.
1437    
1438            * R/sparseMatrix.R (graphNEL -> Tsparse): method for weight case.
1439            (Tsp2grNEL): other fixes needed
1440    
1441    2006-09-11  Martin Maechler  <maechler@stat.math.ethz.ch>
1442    
1443            * R/AllClass.R ("nMatrix"): and subclasses for "nonzero pattern"
1444                    Matrices, since "lMatrix", also "lsparseM" can have NA
1445            * R/ndenseMatrix.R, etc: new source files
1446            * man/nsparseMatrix-classes.Rd, etc: new help files
1447            * tests/: adaptions
1448            * src/chm_common.c (chm_dense_to_SEXP): and others:
1449                    new 'Rkind' argument: "l*" and "d*" both use CHOLMOD_REAL
1450            * src/Csparse.c, etc: ditto
1451    
1452    2006-09-11  Douglas Bates  <bates@R-project.org>
1453    
1454            * src/Mutils.[ch],init.c inst/include/*.h: Move the
1455            alloc_d**Matrix functions to the lme4 package.
1456    
1457    2006-09-09  Douglas Bates  <bates@R-project.org>
1458    
1459            * src/dsCMatrix.c (dsCMatrix_Cholesky): igoring LDL = FALSE now
1460            fixed
1461    
1462    2006-09-09  Martin Maechler  <maechler@stat.math.ethz.ch>
1463    
1464            * R/lMatrix.R: new
1465    
1466            * R/sparseMatrix.R (Tsp2grNEL): do not yet use graph::foo()
1467    
1468            * R/dgeMatrix.R: do not define tcrossprod() methods for "matrix"
1469            * man/tcrossprod.Rd: ditto
1470    
1471    2006-09-08  Douglas Bates  <bates@stat.wisc.edu>
1472    
1473            * inst/include/Matrix_stubs.c,Matrix.h: Add declarations and stubs
1474            for exported functions
1475            * src/Makefile, src/CHOLMOD/Lib/Makefile, src/Metis,CAMD,CCOLAMD:
1476            Remove partitioning algorithms for sparse matrix reordering.  The
1477            copyright on the Metis code was problematic and the methods were
1478            rarely used.
1479            * src/triplet_to_col.[ch],MMHB.[ch]: Remove triplet_to_col.  Such
1480            operations are now done entirely in CHOLMOD code.
1481    
1482    2006-09-06  Douglas Bates  <bates@R-project.org>
1483    
1484            * src/Mutils.h: Remove functions that are no longer used.
1485    
1486    2006-09-04  Douglas Bates  <bates@R-project.org>
1487    
1488            * src/dtCMatrix.c (dtCMatrix_validate): rename functions.
1489            * src/DEPS.mkf: update
1490    
1491    2006-09-02  Martin Maechler  <maechler@stat.math.ethz.ch>
1492    
1493            * created branches/Matrix-for-R-2.3.x;  on trunk: do
1494            * DESCRIPTION (Version): 0.9975-0
1495            (Depends): R (>= 2.4.0)
1496    
1497    2006-09-01  Douglas Bates  <bates@R-project.org>
1498    
1499            * R/sparseMatrix.R: Added direct method to CsparseMatrix from graphNEL
1500    
1501    2006-09-01  Martin Maechler  <maechler@stat.math.ethz.ch>
1502    
1503            * R/sparseMatrix.R: add coercion from "ANY" to "sparseMatrix"
1504            * R/denseMatrix.R:  add coercion from "ANY" to "denseMatrix"
1505    
1506            * R/Matrix.R ([): use nargs() to disambiguate M[i] and M[i,]
1507    
1508    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
1509    
1510            * R/sparseMatrix.R (Arith): moved Arith group method one-level up
1511            from "dsparse" to "sparse" and now go via "Csparse" instead of "dgC"
1512            * R/dsparseMatrix.R: ditto
1513            * R/Csparse.R: ditto
1514    
1515    2006-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
1516    
1517            * R/dMatrix.R (Compare): improve availability of "<", etc
1518            * R/Auxiliaries.R (asTuniq): new; also make use of R 2.4.x print(*,max)
1519    
1520    2006-08-30  Martin Maechler  <maechler@stat.math.ethz.ch>
1521    
1522            * R/dgCMatrix.R: aargh: "Arith(<dgC>, numeric)" was wrong because
1523            of a 0-index which was used as 1-index (..hmm)
1524    
1525            * R/sparseMatrix.R (prSpMatrix): fix printing an all-0 sparse Matrix
1526    
1527            * R/Auxiliaries.R (all0, is0): for 0-testing in presence of NA's
1528            * R/Auxiliaries.R (isTriMat): use all0() for 0-testing.
1529            (.is.diagonal): ditto
1530    
1531            * R/lgTMatrix.R: as("matrix", "lgTMatrix"): warn about NA's
1532    
1533            * R/Matrix.R (Matrix): also work for NA data
1534    
1535    2006-08-28  Martin Maechler  <maechler@stat.math.ethz.ch>
1536    
1537            * R/Matrix.R (Matrix): + 'forceCheck' argument; dimnames setting
1538            in all cases.
1539    
1540    2006-08-27  Douglas Bates  <bates@R-project.org>
1541    
1542            * src/dense.[ch],init.c, R/ddenseMatrix.R, man/band.Rd
1543            (ddense_band): Added triu, tril and band for ddenseMatrix objects.
1544    
1545    2006-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>
1546    
1547            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): added all subclasses of
1548            subclasses of "ddenseMatrix"
1549            * src/init.c et al: outcomment dtrM*_as_dge* and dsyM*_as_dge*_
1550            * R/ddenseMatrix.R et al: setAs("ddenseMatrix", "dgeMatrix", ..)
1551            instead of half dozen specialized ones.
1552    
1553    2006-08-25  Douglas Bates  <bates@R-project.org>
1554    
1555            * R/lmer.R (qqmath method): Bug fix provided by Emmanuel Tillard
1556            <tillard@cirad.fr> - ordering standard errors to match effects.
1557    
1558    2006-08-24  Douglas Bates  <bates@R-project.org>
1559    
1560            * src/lsCMatrix.c (lsCMatrix_trans): Remove lsCMatrix_chol based
1561            on R_ldl.
1562            * R/lCholCMatrix.R,
1563            src/[dl]CholCMatrix.[ch],R_ldl.[ch],Metis_utils.[ch]: removed
1564            * src/dsCMatrix.c (dsCMatrix_to_dgTMatrix): use CHOLMOD
1565            * many files in ./R and ./src: Use more general version of
1566            dup_mMatrix_as_dgeMatrix to simplify method definitions.
1567            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): Add ddiMatrix,
1568            dtpMatrix, dspMatrix and dppMatrix conversions.
1569    
1570    
1571    2006-08-23  Douglas Bates  <bates@R-project.org>
1572    
1573            * R/AllClass.R,lCholCMatrix.R,src/SOURCES_C.mkf,init.c,NAMESPACE:
1574            Remove classes lCholCMatrix and dCholCMatrix based on R_ldl code.
1575            * src/dgeMatrix.c: Ensure 'factors' slot exists in result of
1576            dgeMatrix_crossprod (may need to do this in other places).
1577            * R/AllGeneric.R,dsCMatrix.R, src/dscMatrix.[ch]: Add Cholesky
1578            generic and method for dsCMatrix.  Use CHOLMOD for chol().
1579    
1580    2006-08-22  Douglas Bates  <bates@R-project.org>
1581    
1582            * src/Mutils.c (dup_mMatrix_as_dgeMatrix): updated for general
1583            types of classed Matrices, matrices or numeric or logical vectors.
1584            * src/init.c: register dup_mMatrix_as_dgeMatrix for coercions.
1585            * src/chm_common.c,Mutils.h (as_cholmod_factor): Move check_class
1586            to Mutils.h (as an inline) and change name to Matrix_check_class;
1587            fixes in as_cholmod_factor and chm_factor_to_SEXP.
1588            * src/dsCMatrix.[ch]: Use CHOLMOD for dsCMatrix_chol and
1589            dsCMatrix_matrix_solve.  Comment out vestigial functions.
1590            * src/Csparse.c: use diag_P and uplo_P macros.
1591    
1592    2006-08-21  Douglas Bates  <bates@R-project.org>
1593    
1594            * src/lmer.c (internal_mer_RZXinv): Fix memory leak caught by
1595            valgrind.
1596            * tests/matprod.R: Add tests to verify that 'solve' and '%*%' are
1597            inverses.
1598            * src/sparseQR.c (sparseQR_validate): add new validation test, fix
1599            -Wall warnings.
1600            * src/dppMatrix.c,dtrMatrix.c,dgCMatrix.c,dgeMatrix.c,dspMatrix.c:
1601            Use dup_mMatrix_as_dgeMatrix.
1602    
1603    2006-08-20  Douglas Bates  <bates@R-project.org>
1604    
1605            * src/sparseQR.c: Fix thinko in sparseQR_resid_fitted.
1606            * tests/sparseQR.R: Added
1607            * man/sparseQR-class.Rd: Document methods for qr.* generics
1608            * R/sparseQR.R: Return correct # of coefs; fix cut-and-paste errors
1609    
1610    2006-08-19  Douglas Bates  <bates@R-project.org>
1611    
1612            * NAMESPACE, R/sparseQR.R, src/init.c,sparseQR.[ch],SOURCES_C.mkf:
1613            Added methods for sparseQR for qr.qy, qr.qty, qr.coef, qr.resid
1614            and qr.fitted.
1615            * src/Mutils.[ch]: Added dup_mMatrix_as_dgeMatrix utility
1616            * src/dgCMatrix.c: Check for ordering before storing q in dgCMatrix_QR
1617    
1618    2006-08-18  Martin Maechler  <maechler@stat.math.ethz.ch>
1619    
1620            * R/AllGeneric.R: add "qr" and "chol" generics; via 'trick' since
1621            the base version has no "..." argument.
1622    
1623            * R/sparseMatrix.R (prSpMatrix): fix the triangular unit diagonal case.
1624    
1625            * R/Matrix.R: define and
1626            * NAMESPACE: export as.numeric() and as.logical() methods.
1627                    Let's hope these do not badly slow down something...
1628            Finally export the zapsmall() method.
1629    
1630    2006-08-17  Douglas Bates  <bates@R-project.org>
1631    
1632            * src/dgCMatrix.[ch] (dgCMatrix_matrix_solve), src/init.c,
1633            R/dgCMatrix.R: solve methods for dgCMatrix and dense RHS.
1634            * src/dtCMatrix.c :Remove code that is no longer used
1635            * R/dtCMatrix.R: Use C code for diagU2N in CsparseMatrix classes
1636    
1637    2006-08-14  Douglas Bates  <bates@R-project.org>
1638    
1639            * src/Csparse.[ch],init.c (Csparse_to_logical): Added utilities
1640            Csparse_to_logical and Csparse_symmetric_to_general.
1641            * R/dgCMatrix.R,dsCMatrix.R,Csparse.R : Consolidate general
1642            coercion methods between CsparseMatrix and TsparseMatrix.
1643    
1644    2006-08-14  Douglas Bates  <bates@R-project.org>
1645    
1646            * R/dtCMatrix.R,dgCMatrix.R,Csparse.R src/init.c,dgCMatrix.[ch],
1647            Csparse.[ch],chm_common.c,dense.c : Use CHOLMOD code and methods
1648            for CsparseMatrix, TsparseMatrix, denseMatrix or matrix when
1649            possible.
1650    
1651    2006-08-12  Douglas Bates  <bates@R-project.org>
1652    
1653            * src/chm_common.[ch],Csparse.[ch],Tsparse.[ch],CHMfactor.c,dtTMatrix.c,
1654              dgTMatrix.c,dgCMatrix.c,dsCMatrix.c,dtTMatrix.c, R/dsTMatrix.R,
1655              Tsparse.R,Csparse.R,dgTMatrix.R,dsCMatrix.R,lsCMatrix.R:
1656              generalize conversions between TsparseMatrix, CsparseMatrix,
1657              denseMatrix and matrix.  Preserve triangularity property and
1658              propagate Dimnames in the easy cases.
1659    
1660    2006-08-10  Douglas Bates  <bates@R-project.org>
1661    
1662            * src/lmer.c: adjust checks in glmer_init for S4SXP
1663            * tests/validObj.R: check of all(eq) should be all(eq@x) - worked
1664            before S4SXP but for the wrong reasons.
1665    
1666    2006-08-08  Douglas Bates  <bates@R-project.org>
1667    
1668            * src/Csparse.c (Csparse_crossprod): tcrossprod result has stype = -1.
1669            Later modified to return the upper triangle only.
1670            * R/dgTMatrix.R: Remove vestigial crossprod and tcrossprod methods.
1671    
1672    2006-08-07  Douglas Bates  <bates@R-project.org>
1673    
1674            * src/Csparse.c (Csparse_crossprod): Set stype on result to avoid
1675            R-level conversion to a sparse symmetric class.
1676            * R/Tsparse.R,R/Csparse.R (crossprod and tcrossprod methods):
1677            Remove conversion to sparse symmetric classes (now done in C code).
1678    
1679    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
1680    
1681            * R/dgCMatrix.R: disable old crossprod and tcrossprod methods
1682            * man/band.Rd:  adapt the \dontshow{} unit test.
1683    
1684    2006-08-07  Martin Maechler  <maechler@stat.math.ethz.ch>
1685    
1686            * DESCRIPTION (Version): 0.995-14  for CRAN
1687    
1688            * tests/other-pkgs.R: oops: library(Matrix) outside *if* !
1689    
1690            * R/sparseMatrix.R (Tsp2grNEL): fixed Tsparse -> graph coercion
1691            * tests/other-pkgs.R:  more checks, sparseMatrix -> graph
1692    
1693            * R/Auxiliaries.R (as_Tsparse, as_Rsparse): new
1694            * R/Tsparse.R (tril, triu, band): methods
1695            * R/dgRMatrix.R (tril, ...):    ditto
1696            * man/band.Rd:                  ditto
1697    
1698    2006-08-04  Martin Maechler  <maechler@stat.math.ethz.ch>
1699    
1700            * R/Matrix.R (head, tail): directly use utils:::head.matrix
1701                    to be up-to-date automatically.
1702    
1703    2006-08-03  Martin Maechler  <maechler@stat.math.ethz.ch>
1704    
1705            * DESCRIPTION (Version): 0.995-13 to be released to CRAN
1706    
1707            * DESCRIPTION (Lazydata): no, instead of 'yes' because it fails for:
1708            * data/CAex.R, inst/external/CAex_slots.rda: replacing data/CAex.rda
1709            * data/KNex.R, inst/external/KNex_slots.rda: replacing data/KNex.rda
1710            such that the S4 objects are always created by the current version
1711            of R and 'Matrix' class definitions.
1712    
1713    2006-08-01  Douglas Bates  <bates@R-project.org>
1714    
1715            * R/lmer.R (LMEoptimize method), tests/lmer.R,
1716            inst/external/test3comp.rda: Added warnings for convergence on
1717            boundary and test cases.
1718    
1719            * src/lmer.c (mer_postVar): Modified to return the variances that
1720            are marginal to the fixed effects, not conditional on them (which
1721            is what the bVar slot contents represent).
1722    
1723    2006-07-31  Douglas Bates  <bates@R-project.org>
1724    
1725            * NAMESPACE, src/lmer.c, R/lmer.R (hatTrace):  Add the hatTrace
1726            function which calls the C function mer_hat_trace2.
1727    
1728            * man/ranef.Rd: Include description of "postVar" argument and
1729            producing a caterpillar plot.
1730    
1731    2006-07-31  Martin Maechler  <maechler@stat.math.ethz.ch>
1732    
1733            * NAMESPACE:    change  "correlation" to "corMatrix"
1734            * R/AllClass.R: to avoid clash with S3 class in 'nlme'.
1735            * R/dpoMatrix.R: ditto
1736            * R/lmer.R:      ditto
1737    
1738    2006-07-28  Douglas Bates  <bates@R-project.org>
1739    
1740            * src/lmer.c (internal_mer_RZXinv): Split the calculation of the
1741            RZXinv slot's contents into a separate internal function that can
1742            be used in mer_hat_trace.
1743    
1744    2006-07-22  Martin Maechler  <maechler@stat.math.ethz.ch>
1745    
1746            * R/Matrix.R: Coercions "Matrix" -> (sparse|dense)Matrix
1747            via new smart
1748            * R/Auxiliaries.R (as_Csparse, as_dense, .M.shapse): new
1749            utility functions.
1750    
1751    
1752    2006-07-21  Martin Maechler  <maechler@stat.math.ethz.ch>
1753    
1754            * R/Csparse.R (tril, triu, band): do return *triangular* classed
1755            matrices when appropriate; band() even symmetric ones.
1756            (replCmat): extend to potentially all "CsparseMatrix"
1757            * R/Tsparse.R (replTmat): extend to all "TsparseMatrix"; hence
1758            allow subassignment for special sparse matrices.
1759    
1760            * R/Auxiliaries.R (as_geClass): factor out the  .M.kind() functionality
1761    
1762            * src/lmer.c (mer_MCMCsamp, glmer_MCMCsamp): new 'verbose'
1763            argument; in glmer_*(): print only if(verbose).
1764    
1765            speed-optimize a few places by moving REAL(.) out of loops.
1766    
1767            * src/lmer.h, src/init.h, R/lmer.R:  related to above.
1768    
1769    2006-07-20  Martin Maechler  <maechler@stat.math.ethz.ch>
1770    
1771            * R/Matrix.R("["): disable ("Matrix", i = "logical", j = "missing"),
1772                    since that wrongly triggers also for M[ logi , ]
1773    
1774            * R/denseMatrix.R: "[" methods now also work e.g. when indexing
1775            a symmetric matrix that results in a non-symmetric one.
1776            * R/Auxiliaries.R (as_geClass): new function used in "[" above.
1777    
1778            * R/dMatrix.R: make round(M) work as round(M, 0)
1779    
1780            * R/dgTMatrix.R (image): coordinate system and axis now use
1781            1-based indices, not 0-based ones.
1782    
1783            * R/Tsparse.R (.ind.prep for "["): get rid of max(<empty>) warning.
1784            * tests/indexing.R: test it.
1785    
1786            * NAMESPACE: export isSymmetric(); has been a generic in "base" for a while;
1787            * man/isSymmetric-methods.Rd: and document it.
1788    
1789            * R/SparseM-conv.R: added coercion methods for some 'SparseM' matrices.
1790            * man/SparseM-conv.Rd: docu them
1791    
1792            * tests/other-pkgs.R: renamed from tests/graph.R and add example
1793                    for 'SparseM' conversions
1794    
1795    2006-07-17  Douglas Bates  <Douglas.Bates@R-project.org>
1796    
1797            * R/Matrix.R (head): added head() and tail() methods.
1798    
1799    2006-07-17  Martin Maechler  <maechler@stat.math.ethz.ch>
1800    
1801            * DESCRIPTION (Version): 0.995-12 released to CRAN
1802    
1803    2006-07-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1804    
1805            * tests/simple.R: add check for correct dsT -> dgT coercion;
1806                    add check for correct printing of symmetric sparse matrices.
1807    
1808            * R/Auxiliaries.R (non0ind): return *all* non-0 entry indices also
1809            for sparse symmetric matrices.
1810    
1811            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): do not copy the
1812            diagonal twice.
1813    
1814    2006-07-11  Douglas Bates  <Douglas.Bates@R-project.org>
1815    
1816            * src/dsTMatrix.c (dsTMatrix_as_dgTMatrix): Fix a case of INTEGER
1817            being applied to the x slot (detected by Brian Ripley).
1818    
1819    2006-07-10  Martin Maechler  <maechler@stat.math.ethz.ch>
1820    
1821            * src/dgCMatrix.c (dgCMatrix_validate): 'p' slot must have correct length.
1822    
1823            * R/Auxiliaries.R (isTriC): fix buglet (we were 1-based!)
1824    
1825    2006-07-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1826    
1827            * src/lgCMatrix.c (lgCMatrix_diag): new function
1828            * R/lgCMatrix.R (diag): for new method
1829    
1830            * R/AllClass.R (TsparseMatrix): do use Tsparse_validate
1831                 ==> construction of illegal "*gTMatrix" via new() should
1832                 now be much less easy:
1833            * tests/Class+Meth.R: assertError() for some illegal "dgT*"
1834    
1835            * R/Matrix.R (Matrix): Matrix(0, nrow,ncol) now "goes sparse"
1836                    directly.
1837            * man/Matrix.Rd: documents it.
1838    
1839    2006-07-06  Douglas Bates  <bates@R-project.org>
1840    
1841            * src/pedigree.c (pedigree_inbreeding): Correction in
1842            initialization.  This function is not currently being used and is
1843            not fully tested.
1844    
1845            * NAMESPACE, R/{AllClass.R,lmer.R}, src/{init.c,lmer.c}:
1846            Introduced the glmer class.  Added code for mcmcmsamp on glmer
1847            objects.  Modified validity check on pedigree objects to account
1848            for nonparallel patterns of missingness of parents.
1849    
1850            * man/{lmer-class.Rd,mcmcsamp.Rd}: Update documentation for glmer
1851            class.
1852    
1853    2006-07-01  Martin Maechler  <maechler@stat.math.ethz.ch>
1854    
1855            * R/pMatrix.R: coercion pMatrix -> Tsparse
1856    
1857    2006-06-12  Douglas Bates  <bates@R-project.org>
1858    
1859            * DESCRIPTION (Version): 0.995-11 released to CRAN
1860    
1861            * R/lmer.R (mcmcsamp method): Corrected arrangments of names on
1862            the output from mcmcsamp.
1863    
1864    2006-06-10  Douglas Bates  <bates@R-project.org>
1865    
1866            * R/lmer.R (simulestimate): added C code for calculating the trace
1867            of the hat matrix.
1868    
1869    2006-06-09  Martin Maechler  <maechler@stat.math.ethz.ch>
1870    
1871            * R/diagMatrix.R (setAs): define coercion methods to sparse matrix
1872            classes.
1873            * R/sparseMatrix.R etc: multiplication of diagonal and sparse
1874    
1875    2006-06-08  Martin Maechler  <maechler@stat.math.ethz.ch>
1876    
1877            * R/dgTMatrix.R (colSums): etc. All four of
1878            colSums(), rowSums(), colMeans(), rowMeans() now should work for
1879            all "Matrices".
1880    
1881    2006-06-01  Douglas Bates  <bates@stat.wisc.edu>
1882    
1883            * R/lmer.R (panel.ci): Add a reference line at zero and a
1884            background grid to the qqmath plot of ranef.lmer.
1885    
1886    2006-05-30  Douglas Bates  <bates@stat.wisc.edu>
1887    
1888            * R/lmer.R (expandSlash): Functions (non-exported) to allow nested
1889            grouping factors to be specified in the formula as (1|foo/bar).
1890    
1891    2006-05-27  Douglas Bates  <bates@stat.wisc.edu>
1892    
1893            * R/lmer.R (findbars and others): Change check of is.numeric to
1894            !is.language to resolve the bug reported by Jacob Wegelin.
1895    
1896            * src/pedigree.c (pedigree_inbreeding): Initial implementation of
1897            code to evaluate inbreeding coefficients without calculating T,
1898            based on code in Sargolzaei and Iwaisaki's paper.
1899    
1900    2006-05-27  Douglas Bates  <bates@stat.wisc.edu>
1901    
1902            * R/{lmer.R,AllGeneric.R}, src/{init.c,lmer.[ch]}: Added local
1903            generic and mer methods for isNested and denomDF. This denomDF was
1904            an attempt to emulate that in lme but I don't think that makes
1905            sense.  Use the trace of the hat matrix instead.
1906    
1907    2006-05-17  Martin Maechler  <maechler@stat.math.ethz.ch>
1908    
1909            * R/sparseMatrix.R: Matrix <-> graph methods: can no longer use
1910            the C code depending on a slot structure that's no longer valid.
1911            * src/dgTMatrix.c: ditto (also: src/init.c src/dgTMatrix.h)
1912    
1913    
1914    2006-05-17  Douglas Bates  <bates@stat.wisc.edu>
1915    
1916            *  R/{AllGeneric.R,Csparse.R},man/band.Rd,NAMESPACE: changed name
1917            of lowerTriMatrix generic and methods to tril (also upper to triu)
1918            and added a general band extractor.
1919    
1920    2006-05-16  Douglas Bates  <bates@stat.wisc.edu>
1921    
1922            * R/pedigree.R (pedigree): Replace sire and dam values outside the
1923            allowable range with NAs. Added a corresponding check in the
1924            validity check for the pedigree class.
1925    
1926            * R/[CT]sparse.R ([t]crossprod): The result of single-argument
1927            crossprod methods now inherits from symmetricMatrix.
1928    
1929    2006-05-15  Douglas Bates  <bates@stat.wisc.edu>
1930    
1931            * R/AllGeneric.R (lowerTriMatrix): Added (but did not export)
1932            generics lowerTriMatrix and upperTriMatrix along with methods for
1933            the Csparse virtual class.  Also added a C function Csparse_band
1934            that implements these methods by calling cholmod_band.
1935    
1936    2006-05-15  Martin Maechler  <maechler@stat.math.ethz.ch>
1937    
1938            * R/Tsparse.R ("["): column or row subsetting; @Dimnames[k] got
1939            erased when it was NULL.  This led to invalid subselections!
1940    
1941    2006-04-25  Douglas Bates  <bates@stat.wisc.edu>
1942    
1943            * R/dtCMatrix.R: avoid coercion of dtCMatrix object to dgCMatrix
1944            in method for "t" so as not to lose the unit diagonal property.
1945    
1946    2006-04-19  Douglas Bates  <bates@stat.wisc.edu>
1947    
1948            * R/lmer.R, R/AllGeneric.R, NAMESPACE: Remove the postVar generic
1949            and methods.  This is now an option to the ranef method for the
1950            mer class.
1951    
1952            * src/cs_utils.c: Ensure that the nz component is -1 for a
1953            compressed column-oriented matrix.  Minor formatting cleanup.
1954    
1955            * man/lmer-class.Rd: Document the qqmath method for ranef.lmer
1956            objects.
1957    
1958    2006-04-19  Martin Maechler  <maechler@stat.math.ethz.ch>
1959    
1960            * R/Auxiliaries.R (diagU2N): new for the solve() methods in
1961            * R/dtCMatrix.R: where dgC -> dgT coercion now preserves diag = "U".
1962    
1963    2006-04-15  Douglas Bates  <bates@stat.wisc.edu>
1964    
1965            * src/cs.[ch],src/cs_utils.[ch] : Added Tim Davis' CSparse library
1966            in cs.[ch] and utilities to interface to that code in cs_utils.[ch].
1967    
1968            * R/dtCMatrix.R, src/dtCMatrix.[ch] : CSparse-based solve methods
1969            for the dtCMatrix class.
1970    
1971    2006-04-12  Douglas Bates  <bates@stat.wisc.edu>
1972    
1973            * R/pedigree.R, R/AllClass.R, NAMESPACE: added a pedigree class
1974            and methods for it.
1975    
1976    2006-04-12  Martin Maechler  <maechler@stat.math.ethz.ch>
1977    
1978            * R/dgCMatrix.R: add  storage.mode(.) <- "double" for "matrix"
1979            arguments, such that M %*% 1:6 now works
1980            * Tests/matprod.R: test the above
1981    
1982    2006-04-03  Douglas Bates  <bates@stat.wisc.edu>
1983    
1984            * R/lmer.R (qqmath,ranef.lmer-method): added a qqmath method for
1985            the ranef.lmer class.
1986    
1987            * R/AllClass.R, NAMESPACE, R/lmer.R: Added a postVar generic and
1988            methods to extract the posterior variances from the bVar slot.
1989    
1990    2006-03-30  Martin Maechler  <maechler@stat.math.ethz.ch>
1991    
1992            * R/dtCMatrix.R: allow coercion from  dgC* to triangular (dtC*)
1993            * R/dsCMatrix.R: and symmetric (dsC*) 'Csparse' matrices.
1994    
1995            * R/Tsparse.R: Tsparse* -> Csparse* coercion now works and is tested in
1996            * tests/simple: (extended)
1997    
1998            * R/sparseMatrix.R (isTriangular): now using much improved
1999            * R/Auxiliaries.R (isTriC): new triangularity check for *CMatrix
2000    
2001    2006-03-23  Douglas Bates  <bates@stat.wisc.edu>
2002    
2003            * src/dsyMatrix.c (dsyMatrix_as_dspMatrix): Propagate DimNames
2004            (problem report from Franklin Parlamis).  This should be done
2005            generally.
2006    
2007    2006-03-21  Douglas Bates  <bates@stat.wisc.edu>
2008    
2009            * R/AllClass.R,lmer.R: Change the name of the lmer.ranef class to
2010            ranef.lmer (like summary.lmer).  Add the coef.lmer class and
2011            update the plot methods.
2012    
2013    2006-03-20  Douglas Bates  <bates@stat.wisc.edu>
2014    
2015            * R/lmer.R (resid and ranef methods):  Added methods for the
2016            "residuals" and "resid" generic but only for linear mixed model
2017            fits.  Changed the ranef method to return a list of data frames so
2018            that the plot methods now work.
2019    
2020    2006-03-16  Douglas Bates  <bates@bates2>
2021    
2022            * src/dpoMatrix.c (dpoMatrix_chol): Require n > 0 in call to
2023            dpotrf - otherwise the BLAS on Mac OS X complains and quits.
2024    
2025            * DESCRIPTION (Date): New release
2026    
2027    2006-03-15  Martin Maechler  <maechler@stat.math.ethz.ch>
2028    
2029            * DESCRIPTION (Version): 0.995-6  -- to be released to CRAN
2030    
2031            * data/KNex.rda: replacing 'mm' and 'y' by KNex <- list(mm=mm, y=y)
2032            * man/KNex.Rd: and other help files
2033            * tests/*.R: several ones needed adaption
2034            * inst/doc/Comparisons.Rnw: ditto
2035    
2036    2006-03-11  Martin Maechler  <maechler@stat.math.ethz.ch>
2037    
2038            * R/dgCMatrix.R (replCmat): "[<-" methods for dgCMatrix
2039    
2040            * tests/indexing.R: tests for new [<- methods for sparse matrices.
2041    
2042    2006-03-10  Martin Maechler  <maechler@stat.math.ethz.ch>
2043    
2044            * R/dgTMatrix.R (replTmat): "[<-" methods for dgTMatrix
2045    
2046            * R/Tsparse.R (.ind.prep): fix out-of-range indexing
2047    
2048    2006-03-08  Martin Maechler  <maechler@stat.math.ethz.ch>
2049    
2050            * R/dMatrix.R: enable things like  M [ M < 10 ]
2051            * R/dgeMatrix.R: implement it
2052    
2053    2006-03-06  Martin Maechler  <maechler@stat.math.ethz.ch>
2054    
2055            * R/AllClass.R: define "summary.mer" and "*.lmer"
2056            * R/lmer.R (summary): summary(<mer>) computes & returns the above;
2057            * R/lmer.R (show): now works with summary()
2058    
2059    2006-03-04  Martin Maechler  <maechler@stat.math.ethz.ch>
2060    
2061            * R/dgCMatrix.R: finally direct "Arith"  dgC o dgC
2062            * R/Auxiliaries.R (WhichintersectInd): and other utilities to
2063                    support the above
2064    
2065    2006-02-07  Douglas Bates  <bates@stat.wisc.edu>
2066    
2067            * R/lmer.R (lmer): fix initial values of offset and weights for glm.fit.
2068            Use glmFit$prior.weights for weights in a glmm.
2069            Allow an option usePQL = FALSE to skip the PQL steps for the
2070            Laplace method (and, in time, the AGQ method).
2071    
2072            * src/lmer.c (mer_factor): Move downdating and factoring of XtX
2073            into a separate function internal_mer_Xfactor to be able to call
2074            it from internal_bhat.
2075    
2076    2006-01-23  Martin Maechler  <maechler@stat.math.ethz.ch>
2077    
2078            * tests/Class+Meth.R (tstMatrixClass): function for much better
2079            testing; now again of all actual classes.
2080    
2081            * src/Mutils.c (MAKE_TRIANGULAR_BODY, MAKE_SYMMETRIC_BODY):
2082                    use macros and define make_d_matrix_* and make_i_matrix_*
2083                    where _i_ is for the ldense routines:
2084    
2085            * src/ldense.c (ltrMatrix_as_lgeMatrix): provide functions
2086            * src/ldense.c (lsyMatrix_as_lgeMatrix):
2087    
2088            * R/ldenseMatrix.R: use the above in setAs(*,"lgeMatrix")
2089    
2090    
2091    2006-01-16  Martin Maechler  <maechler@stat.math.ethz.ch>
2092    
2093            * R/Matrix.R (Matrix): has become much "smarter" now auto-producing
2094                    many different kinds of matrices.
2095            * R/*.R: quite a few new methods were needed for R CMD check with
2096                    new Matrix().  Very good for users playing around.
2097    
2098    
2099    2006-01-15  Martin Maechler  <maechler@stat.math.ethz.ch>
2100    
2101            * src/dgeMatrix.c (dMatrix_validate): new
2102            * src/Mutils.c (dense_nonpacked_validate): new
2103    
2104            * src/dtrMatrix.c (dtrMatrix_validate): improved/fixed
2105    
2106    
2107    2006-01-14  Douglas Bates  <bates@stat.wisc.edu>
2108    
2109            * R/AllClass.R (compMatrix), (generalMatrix): new virtual classes
2110    
2111    2006-01-07  Douglas Bates  <bates@stat.wisc.edu>
2112    
2113            * DESCRIPTION (Version): 0.99-6 released to CRAN
2114    
2115            * src/dgBCMatrix.c (cscb_trcbsm): Fix due to Peter Dalgaard for
2116            segfault in cases with multiple non-nested grouping factors.
2117    
2118    2006-01-03  Martin Maechler  <maechler@stat.math.ethz.ch>
2119    
2120            * DESCRIPTION (Version): 0.99-4 to be released to CRAN
2121                    (Depends): also on 'utils'
2122    
2123            * R/AllClass.R (diagonalMatrix): new class with "ddi*" and "ldi*"
2124            * R/diagMatrix.R (Diagonal): constructor and methods for
2125            diagonal matrices
2126    
2127            * R/ltTMatrix.R: new "minimal methods"
2128    
2129    2005-12-12  Martin Maechler  <maechler@stat.math.ethz.ch>
2130    
2131            * R/AllGeneric.R (tcrossprod): 2-argument version; here, and for
2132            all methods (and help files).
2133    
2134    2005-12-09  Martin Maechler  <maechler@stat.math.ethz.ch>
2135    
2136            * R/Auxiliaries.R (dimNamesCheck): fixed thinko -> bug
2137                    for case (dimn.  op  no_dimn.)
2138    
2139    2005-11-14  Douglas Bates  <bates@stat.wisc.edu>
2140    
2141            * DESCRIPTION (Version): 0.99-2  released to CRAN
2142    
2143    2005-10-21  Douglas Bates  <bates@stat.wisc.edu>
2144    
2145            * R/lmer.R (simulate method): Fixed a drop=FALSE problem reported
2146            by Julian Faraway.
2147    
2148    2005-10-06  Martin Maechler  <maechler@stat.math.ethz.ch>
2149    
2150            * R/Auxiliaries.R (try_as): new utility
2151            * R/sparseMatrix.R: use try_as() in coercion to original class
2152    
2153    2005-09-30  Martin Maechler  <maechler@stat.math.ethz.ch>
2154    
2155            * src/dgCMatrix.c (double_to_csc): and dgeMatrix_to_csc()
2156    
2157    2005-09-29  Martin Maechler  <maechler@stat.math.ethz.ch>
2158    
2159            * R/Auxiliaries.R (dimNamesCheck): added
2160    
2161            * R/Matrix.R (as.array), (as.vector): new
2162    
2163    2005-09-28  Martin Maechler  <maechler@stat.math.ethz.ch>
2164    
2165            * R/Matrix.R (Matrix): get logical argument 'sparse' with a smart
2166                    default.
2167            * R/AllClass.R: move 'factors' slot toplevel "Matrix";
2168                    "pMatrix" now contains "sparseMatrix"
2169    
2170    2005-09-26  Martin Maechler  <maechler@stat.math.ethz.ch>
2171    
2172            * tests/Class+Meth.R: new tests; t(t(m)) == m
2173    
2174            * src/dtCMatrix.c (tsc_transpose): add forgotten "diag" slot
2175    
2176            * src/dsTMatrix.c (dsTMatrix_as_dsCMatrix): bad typo (segfault!)
2177            * src/dtTMatrix.c (dtTMatrix_as_dtCMatrix): new
2178    
2179            * R/dspMatrix.R: typo in "t" method
2180    
2181    2005-09-18  Douglas Bates  <bates@wisc.edu>
2182    
2183            * R/AllClass.R (TsparseMatrix), CsparseM* and RsparseM*
2184            * R/Tsparse.R: instead of R/gTMatrix.R
2185            * R/Csparse.R: new
2186            * src/Tsparse.c (Tsparse_to_Csparse): new; -> cholmod_()
2187            * src/Tsparse.c: new; many trivial methods calling cholmod_()
2188            * src/Csparse.c (Csparse_to_Tsparse), transpose, (mat|cross)prod:
2189                            via cholmod
2190    
2191    2005-09-16  Martin Maechler  <maechler@stat.math.ethz.ch>
2192    
2193            * R/Auxiliaries.R (non0ind): new function using new C code
2194            * src/dgCMatrix.c (compressed_non_0_ij): new utility
2195    
2196    2005-09-15  Douglas Bates  <bates@localhost.localdomain>
2197    
2198            * src/chm_common.h: header file required by all C sources that
2199            call CHOLMOD functions.  It defines a cholmod_common structure
2200            called 'c' whose address is passed as the last argument to
2201            (virtually) every CHOLMOD function.
2202    
2203            * src/Pattern.c: Simple example of the use of CHOLMOD.
2204    
2205            * src/init.c: initialize and finalize the cholmod_common structure.
2206    
2207            * src/Makefile: Added source packages CHOLMOD UMFPACK AMD COLAMD
2208            LDL and CCOLAMD from the U. of Florida sparse matrix library.
2209    
2210    2005-09-08  Martin Maechler  <maechler@stat.math.ethz.ch>
2211    
2212            * inst/test-tools.R: new file collecting the utility functions used
2213                    in ./tests/*.R
2214    
2215            * R/ddenseMatrix.R (cbind2): new methods for "numeric" and "matrix"
2216            * R/Matrix.R (cbind2): methods for NULL and missing
2217    
2218    2005-08-31  Martin Maechler  <maechler@stat.math.ethz.ch>
2219    
2220            * R/AllClass.R: new "index" class for "[" and "[<-":
2221                    First cut at "symmetricMatrix" and "triangularMatrix"
2222            * R/gTMatrix.R (.ind.prep): new function;
2223                    Logical and character indexing now work too.
2224            * R/Matrix.R: cheap "[<-" methods for denseMatrix now work
2225            * tests/indexing.R: new, including *.Rout.save
2226            * tests/dgTMatrix.R: new
2227    
2228    2005-08-29  Douglas Bates  <bates@wisc.edu>
2229    
2230            * src/dgTMatrix.c (graphNEL_as_dgTMatrix): Corrected the position
2231            indicator pos not being updated.  Also enforced upper triangular
2232            for symmetric case.  Need to coerce edges component of elements of
2233            edge list - grr! (Why don't they define their classes cleanly?)
2234    
2235    2005-08-26  Martin Maechler  <maechler@stat.math.ethz.ch>
2236    
2237            * R/Matrix.R:  added first "[<-" methods; not yet functional
2238            * R/denseMatrix.R: ditto
2239            * man/Subassign-methods.Rd: new help file for these
2240    
2241    2005-08-25  Martin Maechler  <maechler@stat.math.ethz.ch>
2242    
2243            * DESCRIPTION (Version): 0.98-6
2244    
2245            * R/denseMatrix.R: new file for "[" fallback methods for all dense
2246            matrices.
2247    
2248    2005-08-19  Martin Maechler  <maechler@stat.math.ethz.ch>
2249    
2250            * src/lgCMatrix.c (lcsc_to_matrix): new; need for
2251                    as( <logical>, "matrix")
2252    
2253            * R/pMatrix.R: coercion to "lgTMatrix"
2254    
2255            * R/gTMatrix.R: new virtual class to define "[" methods for.
2256            * man/gTMatrix-class.Rd:
2257            * General slight re-organization of where "[" methods are defined.
2258              more to come.
2259    
2260    2005-08-18  Douglas Bates  <bates@wisc.edu>
2261    
2262            * DESCRIPTION (Version): 0.98-5  released to CRAN
2263    
2264            * src/dgTMatrix.c (graphNEL_as_dgTMatrix): add first graphNEL methods
2265            * .....
2266    
2267    2005-08-18  Douglas Bates  <bates@localhost.localdomain>
2268    
2269            * R/lmer.R: Corrected naming scheme in mcmcsamp to work with lmer
2270            or glmer objects.
2271    
2272    2005-08-17  Martin Maechler  <maechler@stat.math.ethz.ch>
2273    
2274            * DESCRIPTION (Version): 0.98-4 : upload to CRAN
2275    
2276    2005-08-16  Douglas Bates  <bates@localhost.localdomain>
2277    
2278            * R/HBMM.R: finish re-writing R-only code.
2279    
2280    2005-08-15  Douglas Bates  <bates@localhost.localdomain>
2281    
2282            * man/externalFormats.Rd: move documentation for writeHB and
2283            writeMM here.
2284    
2285            * src/mmio.c: replace inclusion of <malloc.h> by <stdlib.h>
2286            (suggested by Paul Roecker).
2287    
2288            * tests/validObj.R (assertError): Comment out test that is failing
2289            after recent changes in r-devel.
2290    
2291    
2292    2005-08-11  Martin Maechler  <maechler@stat.math.ethz.ch>
2293    
2294            * R/AllClass.R: intermediate virtual class "denseMatrix"
2295            * man/denseMatrix-class.Rd
2296            * NAMESPACE: export it, and also export
2297            * man/unused-classes.Rd: "iMatrix", "zMatrix" and "ldenseMatrix"
2298    
2299    2005-08-10  Douglas Bates  <bates@wisc.edu>
2300    
2301            * DESCRIPTION (Version): 0.98-3 to CRAN
2302    
2303            * src/dtrMatrix.c (dtrMatrix_validate): fixed up validation and
2304            matrix_solve code (which was really, really wrong).
2305    
2306    2005-08-07  Douglas Bates  <bates@wisc.edu>
2307    
2308            * DESCRIPTION (Version): 0.98-2
2309    
2310            * R/HBMM.R (readHB), (readMM): read Matrix Market formats
2311    
2312            * R/lmer.R (abbrvNms): new
2313            * R/lmer.R (mcmcsamp): allow transformed parameters
2314            * src/HBMM.c (Matrix_writeMatrixMarket): Added read/write routines
2315            for the Harwell-Boeing and the MatrixMarket formats.
2316    
2317    2005-08-04  Martin Maechler  <maechler@stat.math.ethz.ch>
2318    
2319            * man/dtrMatrix-class.Rd: add examples
2320            * man/dtpMatrix-class.Rd: ditto; plus note about PROBLEM
2321    
2322            * TODO: note the dtpMatrix (docu) bug
2323    
2324            * R/zzz.R (.onLoad): assignInNamespace("as.matrix", *, "base")
2325            in order to ensure that new as.matrix() is used by old functions,
2326            e.g., svd(), qr(), eigen(), dist(),..;
2327                  apply(), also matplot() or pairs().
2328    
2329    
2330    2005-08-03  Martin Maechler  <maechler@stat.math.ethz.ch>
2331    
2332            * R/lmer.R: add 'fixme' comments and move the linear vs glm check;
2333              add comments about 'control' / lmerControl() arguments
2334    
2335    2005-07-27  Douglas Bates  <bates@wisc.edu>
2336    
2337            * man/sleepstudy.Rd: Added the sleep data set.
2338            * DESCRIPTION (Version): 0.98-1  released to CRAN
2339    
2340    2005-07-12  Douglas Bates  <bates@wisc.edu>
2341            * man/sleepstudy.Rd: Added the sleep data set.
2342    
2343            * R/lmer.R (glmmMCMC): Added PACKAGE = "Matrix" in a couple of
2344            .Call calls that were producing spurious output.
2345    
2346    2005-07-05  Douglas Bates  <bates@wisc.edu>
2347    
2348            * R/lmer.R (lmer): stored updated variance component estimates in
2349            mer object for the generalized model.  (Bug reported by Renaud
2350            Lancelot).
2351    
2352    2005-07-03  Douglas Bates  <bates@wisc.edu>
2353    
2354            * src/lmer.c (glmer_devAGQ): Added AGQ for single grouping factor,
2355            unidimensional case.
2356    
2357    2005-06-08  Douglas Bates  <bates@wisc.edu>
2358    
2359            * DESCRIPTION (Version): 0.96-1
2360    
2361            * moved  lmer-class' R and C code moved from lme4 to here
2362    
2363    2005-06-04  Douglas Bates  <bates@wisc.edu>
2364    
2365            * R/dgCMatrix.R: Call to csc_matrix_mm used undefined arguments
2366            (reported by Guissepe Ragusa <gragusa@ucsd.edu>)
2367    
2368    2005-06-02  Douglas Bates  <bates@wisc.edu>
2369    
2370            * src/Makefile.win: Forgot to update this when Makefile changed.
2371    
2372    2005-05-11  Douglas Bates  <bates@wisc.edu>
2373    
2374            * src/dgCMatrix.c (csc_transpose): Simplified function fixing a
2375            bug reported by Kurt Hornik and Michael Hahsler.
2376    
2377    2005-05-10  Douglas Bates  <bates@wisc.edu>
2378    
2379            * src/lgCMatrix.c (Matrix_lgClgCmm): Implementation of methods for
2380            logical sparse matrices.  These will also be used in the symbolic
2381            analysis for lmer objects.
2382    
2383            * src/dsCMatrix.c (dsCMatrix_matrix_solve): Copied the dimensions
2384            of b to the result.  Fixes bug reported by Jean.Coursol@math.u-psud.fr
2385    
2386    2005-05-06  Douglas Bates  <bates@wisc.edu>
2387    
2388            * src/dgeMatrix.c (dgeMatrix_colsums): Added an implementation of
2389            colMeans, colSums, rowMeans and rowSums.
2390    
2391    2005-04-18  Douglas Bates  <bates@wisc.edu>
2392    
2393            * src/lgCMatrix.[ch]: code for _validate method and stub for
2394            multiplication operation.
2395    
2396            * src/dgeMatrix.c (dgeMatrix_matrix_solve): Passing wrong argument
2397            to dgetrs.
2398    
2399            * src/init.c: Fix cut-and-paste error in definition of
2400            dgeMatrix_matrix_solve
2401    
2402            * src/{many files}: Tighten code by using ALLOC_SLOT.
2403    
2404    2005-04-15  Douglas Bates  <bates@wisc.edu>
2405    
2406            * R/AllClass.R: Add lgTMatrix and lgCMatrix classes
2407    
2408            * DESCRIPTION: Eliminate import of stats.
2409    
2410    
2411    2005-04-06  Douglas Bates  <bates@wisc.edu>
2412    
2413            * R/AllClass.R : add logical sparse matrix classes
2414    
2415    2005-04-01  Martin Maechler  <maechler@stat.math.ethz.ch>
2416    
2417            * R/dgTMatrix.R: add "[" method for triplet matrices
2418            * R/sparseMatrix.R: and other sparse ones; --> add show() for sparse
2419    
2420    2005-03-31  Douglas Bates  <bates@wisc.edu>
2421    
2422            * DESCRIPTION (Version): release 0.95-5 to CRAN
2423    
2424            * R/dMatrix.R: add %*%, crossprod and solve "fallback" methods
2425            * R/sparseMatrix.R: %*%, crossprod()
2426            * R/dgeMatrix.R: more "fallback" methods for numeric/dense matrices
2427            * man/*.Rd: move method definitions to 'Matrix' and 'dMatrix'
2428            * src/lmer.c (lmer_fitted): fix thinko
2429    
2430    2005-03-26  Martin Maechler  <maechler@stat.math.ethz.ch>
2431    
2432            * R/AllClass.R: add two virtual sparse classes ``on top''
2433    
2434    2005-03-24  Martin Maechler  <maechler@stat.math.ethz.ch>
2435    
2436            * R/AllClass.R (setClass): use "VIRTUAL" for the virtual classes;
2437                    correspondingly fix examples and tests/ since new()
2438                    doesn't work for virtual classes.
2439    
2440    2005-03-17  Martin Maechler  <maechler@stat.math.ethz.ch>
2441    
2442            * R/Matrix.R (as.matrix): method and one for unname()
2443            * tests/dpoMatrix.R: tests should now be less platform dependent;
2444              also run for R 2.1.0; using as.matrix()
2445    
2446    2005-03-15  Douglas Bates  <bates@wisc.edu>
2447    
2448            * R/pMatrix.R: "pMatrix" class added
2449            * ....
2450    
2451    2005-03-14  Douglas Bates  <bates@wisc.edu>
2452    
2453            * R/dtpMatrix.R: Add unpack method and an example.
2454    
2455            * src/dsyMatrix.c (dsyMatrix_trf): Add BunchKaufman factorization
2456            of general symmetric matrices and associated S4 methods.
2457    
2458    2005-03-10  Martin Maechler  <maechler@stat.math.ethz.ch>
2459            +
2460    2005-03-05  Martin Maechler  <maechler@stat.math.ethz.ch>
2461    
2462            * R/dgeMatrix.R (setAs): and many other files: more coercion,
2463              crossprod() and "%*%" methods added; tests, too.
2464            * tests/matprod.R: new, for testing these
2465    
2466    2005-03-03  Douglas Bates  <bates@wisc.edu>
2467    
2468            * src/lmer.c (lmer_fitted): Added.
2469    
2470    2005-03-02  Douglas Bates  <bates@wisc.edu>
2471    
2472            * R/dsTMatrix.R: Conversion from dsTMatrix to dsCMatrix
2473    
2474    2005-02-28  Douglas Bates  <bates@wisc.edu>
2475    
2476            * src/*.c,po/,inst/po: Internationalization and localization of
2477            the package.
2478    
2479            * src/ldl.[ch]: Removed these as their contents are referenced in the
2480            R_ldl.c file.
2481    
2482            * src/flame.[ch]: Removed these source files.
2483    
2484            * src/dtrMatrix.c (make_array_triangular): Move to Mutils
2485    
2486            * src/LU.[ch],src/init.c: absorb in factorizations
2487    
2488            * src/Mutils.h: prepare for internationalization
2489    
2490            * src/cblas.h: move the enum definitions to Mutils.h and remove
2491            this file
2492    
2493    2005-02-26  Martin Maechler  <maechler@stat.math.ethz.ch>
2494    
2495            * R/dgeMatrix.R: provide "dimnames" and "dimnames<-" methods
2496    
2497            * R/dtrMatrix.R: fix t() method
2498    
2499            * R/dgeMatrix.R: define group methods "Arith", "Math", "Math2"
2500            * NAMESPACE: export them (and import generics from "methods")
2501            * tests/group-methods.R : and test them.
2502    
2503            * src/dtrMatrix.c (dtrMatrix_as_dgeMatrix): prevent seg.fault in
2504            border case
2505    
2506    2005-02-24  Douglas Bates  <bates@stat.wisc.edu>
2507    
2508            * DESCRIPTION (Version): 0.95-2  released to CRAN
2509    
2510            * src/dgBCMatrix.c:
2511            * src/lmer.c: many changes
2512            * ...
2513    
2514    2005-02-04  Martin Maechler  <maechler@stat.math.ethz.ch>
2515    
2516            * R/Matrix.R: add more sophisticated show() method.
2517    
2518    2005-02-02  Douglas Bates  <bates@stat.wisc.edu>
2519    
2520            * */* : almost complete reorganization of classes.
2521    
2522    2005-01-26  Douglas Bates  <bates@wisc.edu>
2523    
2524            * R/AllGeneric.R: Added matrix exponential generic expm and a method
2525            for the geMatrix class.
2526    
2527    2005-01-24  Douglas Bates  <bates@wisc.edu>
2528    
2529            * src/Makefile (clean): Remove *.a and *.so
2530    
2531            * man/cscBlocked-class.Rd: Remove reference to the lmer-class.
2532    
2533    2005-01-23  Douglas Bates  <bates@wisc.edu>
2534    
2535            * src/lmer.c (Lind): Definition of Lind was backwards.  This only
2536            had an effect in cases with more than 2 grouping factors.
2537    
2538    2005-01-03  Douglas Bates  <bates@wisc.edu>
2539    
2540            * src/lmeRep.c (lmer_variances): change from lmeRep to lmer
2541    
2542    2004-12-23  Douglas Bates  <bates@wisc.edu>
2543    
2544            * src/init.c (R_init_Matrix): Reorder calls to R_registerRoutines
2545            and R_useDynamicSymbols (suggested by B.D.Ripley).
2546    
2547    2004-12-14  Douglas Bates  <bates@wisc.edu>
2548    
2549          * R/sscMatrix.R: Add determinant methods          * R/sscMatrix.R: Add determinant methods
2550    
2551          * src/triplet.[ch],src/init.c (triplet_to_matrix): Add a coercion          * src/triplet.[ch],src/init.c (triplet_to_matrix): Add a coercion
2552          for tripletMatrix to matrix.          for tripletMatrix to matrix.
2553    
2554  2004-12-13  Douglas Bates  <bates@bates1-home>  2004-12-13  Douglas Bates  <bates@wisc.edu>
2555    
2556          * R/AllClass.R (.onLoad): Eliminate the bbCrosstab class, which is          * R/AllClass.R (.onLoad): Eliminate the bbCrosstab class, which is
2557          no longer used.          no longer used.
# Line 17  Line 2563 
2563          for multivariate random effects with multiple grouping factors.          for multivariate random effects with multiple grouping factors.
2564          Fixes part but not all of #15.          Fixes part but not all of #15.
2565    
2566  2004-12-03  Douglas Bates  <bates@bates1-home>  2004-12-03  Douglas Bates  <bates@wisc.edu>
2567    
2568          * src/lmeRep.c (lmeRep_factor): order of operations for multiple          * src/lmeRep.c (lmeRep_factor): order of operations for multiple
2569          scalar grouping factors corrected.          scalar grouping factors corrected.
2570    
2571  2004-11-29  Douglas Bates  <bates@bates1-home>  2004-11-29  Douglas Bates  <bates@wisc.edu>
2572    
2573          * src/bCrosstab.c: remove diag_update which is no longer used          * src/bCrosstab.c: remove diag_update which is no longer used
2574    
2575  2004-11-16  Douglas Bates  <bates@bates1-home>  2004-11-16  Douglas Bates  <bates@wisc.edu>
2576    
2577          * src/Metis_utils.c: Move metis.h include to C sources so that the          * src/Metis_utils.c: Move metis.h include to C sources so that the
2578          .h file can be included.          .h file can be included.
2579    
2580  2004-11-12  Douglas Bates  <bates@bates1-home>  2004-11-12  Douglas Bates  <bates@wisc.edu>
2581    
2582          * src/LU.c,geMatrix.c,trMatrix.c, etc.:          * src/LU.c,geMatrix.c,trMatrix.c, etc.:
2583          Complete allocation of slots in NEW_OBJECT.          Complete allocation of slots in NEW_OBJECT.
2584    
2585          * src/Mutils.h: Moved list of symbols to an include file          * src/Mutils.h: Moved list of symbols to an include file
2586    
2587  2004-11-11  Douglas Bates  <bates@bates1-home>  2004-11-11  Douglas Bates  <bates@wisc.edu>
2588    
2589          * src/geMutils.c (Matrix_init): remove unused function          * src/geMutils.c (Matrix_init): remove unused function
2590    
2591  2004-11-10  Douglas Bates  <bates@bates1-home>  2004-11-10  Douglas Bates  <bates@wisc.edu>
2592    
2593          * src/cscMatrix.c (csc_to_imagemat): removed unused function          * src/cscMatrix.c (csc_to_imagemat): removed unused function
2594    
2595  2004-11-05  Douglas Bates  <bates@bates1-home>  2004-11-05  Douglas Bates  <bates@wisc.edu>
2596    
2597          * src/Makefile.win (SOURCES_C): Keep consistent with Makefile          * src/Makefile.win (SOURCES_C): Keep consistent with Makefile
2598    
2599  2004-10-27  Douglas Bates  <bates@bates1-home>  2004-10-27  Douglas Bates  <bates@wisc.edu>
2600    
2601          * R/pdmatrix.R: remove PACKAGE="Matrix" in .Call calls          * R/pdmatrix.R: remove PACKAGE="Matrix" in .Call calls
2602    
2603  2004-10-04  Douglas Bates  <bates@bates1-home>  2004-10-04  Douglas Bates  <bates@wisc.edu>
2604    
2605          * src/init.c: Created R_init_Matrix and added registration of C          * src/init.c: Created R_init_Matrix and added registration of C
2606          routines.          routines.
2607    
2608  2004-10-02  Douglas Bates  <bates@bates1-home>  2004-10-02  Douglas Bates  <bates@wisc.edu>
2609    
2610          * R/tripletMatrix.R: Force a require(lattice) for the image methods.          * R/tripletMatrix.R: Force a require(lattice) for the image methods.
2611    
2612  2004-06-15  Douglas Bates  <bates@bates7>  2004-06-15  Douglas Bates  <bates@wisc.edu>
2613    
2614          * man/trMatrix-class.Rd: Escape the % chars in .Rd files.          * man/trMatrix-class.Rd: Escape the % chars in .Rd files.
2615    

Legend:
Removed from v.392  
changed lines
  Added in v.2154

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