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

Legend:
Removed from v.350  
changed lines
  Added in v.2157

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