SCM

SCM Repository

[matrix] Annotation of /pkg/ChangeLog
ViewVC logotype

Annotation of /pkg/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1902 - (view) (download)

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

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