| 2006-08-14 Brian Gough <bjg@network-theory.co.uk> |
| |
| * balancemat.c: balance a general matrix D^-1 A D for rows and |
| columns |
| |
| 2006-04-24 Brian Gough <bjg@network-theory.co.uk> |
| |
| * svdstep.c apply_givens.c householder.c: perform linear |
| operations with level-1 blas when compiled with USE_BLAS. |
| |
| 2006-02-10 Brian Gough <bjg@network-theory.co.uk> |
| |
| * cholesky.c (quiet_sqrt): added a quiet_sqrt to allow checking |
| for positive definiteness without a runtime error |
| |
| 2005-08-22 Brian Gough <bjg@network-theory.co.uk> |
| |
| * svd.c (gsl_linalg_SV_decomp_jacobi): reorganised convergence |
| tests to increase robustness in the presence of extended precision |
| registers. |
| |
| 2005-06-22 Brian Gough <bjg@network-theory.co.uk> |
| |
| * svd.c (gsl_linalg_SV_decomp_jacobi): increased number of sweeps |
| to MAX(5*N,12) and track numerical errors for better termination |
| |
| 2005-02-02 Brian Gough <bjg@network-theory.co.uk> |
| |
| * svd.c (gsl_linalg_SV_decomp_jacobi): changed M<N test to correct |
| matrix A instead of Q. |
| |
| 2004-12-23 Brian Gough <bjg@network-theory.co.uk> |
| |
| * qr.c (gsl_linalg_R_svx): added missing function |
| |
| 2004-09-13 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test.c: added tests for LQ, P^TLQ solvers |
| |
| * ptlq.c: added support for PA = LQ decompositions |
| |
| * lq.c: added support for A = LQ decompositions |
| |
| 2004-05-30 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test.c (test_LU_solve): increase test tolerance to accommodate |
| gcc-3.3.3 w/ bounds checking |
| |
| 2004-05-26 Brian Gough <bjg@network-theory.co.uk> |
| |
| * householder.c (gsl_linalg_householder_hm): |
| (gsl_linalg_householder_mh): |
| (gsl_linalg_householder_hm1): added blas code (but ifdef'd out) |
| |
| * test.c (test_SV_decomp_dim): skip NaNs in test |
| (test_SV_decomp_mod_dim): skip NaNs in test |
| |
| 2004-04-26 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test.c (test_TDN_solve): increased tolerance for tests |
| (test_TDN_cyc_solve): increased tolerance for tests |
| |
| 2004-03-15 Brian Gough <bjg@network-theory.co.uk> |
| |
| * tridiag.c: (gsl_linalg_solve_symm_tridiag): |
| (gsl_linalg_solve_tridiag): |
| (gsl_linalg_solve_symm_cyc_tridiag): |
| (gsl_linalg_solve_cyc_tridiag): use GSL_ERROR macro to report |
| errors, make size restrictions tighter (no unused elements allowed |
| to be passed in). |
| |
| 2004-03-06 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test.c (test_SV_decomp_mod_dim): added tests for SV_decomp_mod |
| |
| * svd.c (gsl_linalg_SV_decomp): handle the case N=1 (SVD of a |
| column vector) |
| (gsl_linalg_SV_decomp_mod): handle the case N=1 (SVD of a column |
| vector) |
| |
| 2004-03-05 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test.c (test_SV_decomp): add tests with inf/nan |
| |
| * svd.c (gsl_linalg_SV_decomp): handle nans in block reduction |
| |
| * balance.c: handle infinity/nan when scaling input matrix |
| |
| 2003-07-24 Brian Gough <bjg@network-theory.co.uk> |
| |
| * tridiag.c (solve_cyc_tridiag_nonsym): fixed declarations of i so |
| they do not shadow each other |
| |
| 2003-05-30 Brian Gough <bjg@network-theory.co.uk> |
| |
| * householder.c (gsl_linalg_householder_hv): converted to use blas |
| routines |
| |
| 2003-05-08 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test.c: added tests for QR_QRsolve and QRPT_QRsolve |
| |
| * qrpt.c (gsl_linalg_QRPT_QRsolve): fixed dgemv to use CblasTrans |
| when computing Q^T b |
| |
| * qr.c (gsl_linalg_QR_QRsolve): fixed dgemv to use CblasTrans when |
| computing Q^T b |
| |
| Fri Oct 18 17:46:30 2002 Brian Gough <bjg@network-theory.co.uk> |
| |
| * householdercomplex.c (gsl_linalg_complex_householder_transform): |
| return tau = 0 to prevent division by zero for beta_r = 0 |
| |
| Mon Aug 12 20:12:55 2002 Brian Gough <bjg@network-theory.co.uk> |
| |
| * bidiag.c (gsl_linalg_bidiag_unpack_B): fixed to copy |
| superdiagonal and not subdiagonal, as was incorrectly done |
| previously. |
| |
| Sun Jun 16 11:57:00 2002 Brian Gough <bjg@network-theory.co.uk> |
| |
| * svd.c (gsl_linalg_SV_decomp): keep track of maximum value |
| correctly when sorting singular values |
| |
| * test.c (test_SV_decomp): add 3x3 of SVD |
| |
| * svdstep.c (chase_out_intermediate_zero): handle case of dk=0 |
| (chase_out_trailing_zero): handle case of dn=0 |
| |
| Wed Apr 17 20:04:11 2002 Brian Gough <bjg@network-theory.co.uk> |
| |
| * tridiag.c (gsl_linalg_solve_tridiag): |
| (gsl_linalg_solve_cyc_tridiag): added tridiagonal solvers for |
| non-symmetric case (David Necas <yeti@physics.muni.cz>) |
| |
| Mon Apr 15 19:55:40 2002 Brian Gough <bjg@network-theory.co.uk> |
| |
| * tridiag.c (solve_cyc_tridiag): corrected typographical error in |
| Engeln-Mullges Algorithm 4.35, step 1.7 (f_(n-1) should be |
| alpha_(n-1)) |
| |
| Thu Sep 13 12:26:17 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test.c (test_SV_decomp): added brute force testing of 2x2 svd |
| |
| * svdstep.c (svd2): fixed bug where singular values in 2x2 svd |
| were not ordered correctly. |
| |
| Mon Sep 10 22:35:24 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test.c (test_LUc_solve): added a test for complex LU |
| |
| Tue Sep 4 17:22:58 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * luc.c: added LU decomposition for complex matrices |
| |
| Wed Aug 29 16:34:50 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * svd.c (gsl_linalg_SV_decomp_jacobi): make sure all singular |
| vectors are zero, not just first. |
| |
| * svdstep.c (svd2): added explicit calculation of 2x2 svd, fixes |
| bug that prevents convergence. |
| |
| Thu Aug 2 18:19:08 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * svdstep.c (trailing_eigenvalue): chose better value of mu when |
| dt=0. |
| |
| Sun Jul 8 18:03:05 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * qrpt.c (gsl_linalg_QRPT_decomp): fix bug where null column |
| caused division by zero in norm-update calculation |
| |
| Sun Jul 1 22:43:22 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * modified to use new-style vector views, affects most |
| functions |
| |
| Wed Jun 20 13:38:24 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * svd.c (gsl_linalg_SV_decomp): added error checking |
| |
| Tue Jun 19 23:19:49 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * svd.c (gsl_linalg_SV_decomp): Golub-Reinsch svd, has more |
| deterministic convergence |
| (gsl_linalg_SV_decomp_mod): Golub-Reinsch with |
| Preconditioning, much more efficient for M>>N |
| |
| * balance.c (gsl_linalg_balance_columns): balances (or |
| "equilibrates") the columns of a matrix |
| |
| Sun Jun 17 21:49:03 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * givens.c: split out apply_givens functions into separate file |
| apply_givens.c |
| |
| Wed Jun 13 23:41:34 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * qr.c (gsl_linalg_QR_decomp): simplified reverse loop |
| |
| * bidiag.c: bidiagonalisation of a matrix (needed for |
| Golub-Reinsch SVD) |
| |
| Wed Jun 6 12:36:58 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * householdercomplex.c: split out complex functions into a |
| separate file to reduce linking dependencies |
| |
| * qrpt.c (gsl_linalg_QRPT_decomp): provide workspace as an |
| argument, to avoid allocating it on each call |
| (gsl_linalg_QRPT_decomp2): provide workspace as an argument, to |
| avoid allocating it on each call |
| |
| * qr.c (gsl_linalg_QR_decomp): provide workspace as an argument, |
| to avoid allocating it on each call |
| |
| Thu May 17 17:01:45 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * qr.c (gsl_linalg_QR_lssolve): added least squares solver |
| |
| Sat Apr 28 00:39:53 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * qr.c (gsl_linalg_QR_update): fixed QR update to work correctly |
| with rectangular matrices where M > N |
| |
| Mon Apr 23 10:29:01 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * tridiag.c: removed EFAULT test since this should only apply to |
| non-null invalid pointers |
| |
| Fri Apr 13 20:43:38 2001 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test.c: replaced uses of matmult by dgemm |
| |
| Sun Oct 22 13:56:30 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * householder.c (gsl_linalg_householder_transform): changed calls |
| to gsl_hypot() to hypot() so that the system function is used in |
| preference (the configure script will define hypot to gsl_hypot if |
| hypot is unavailable) |
| |
| * svd.c (gsl_linalg_SV_decomp): changed calls to gsl_hypot() to |
| hypot() |
| |
| Sat Oct 21 15:54:56 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * tridiag.c (solve_tridiag): prevent out-of-bounds array access |
| for small N (attempt to access element[N-2] when N is 1). |
| |
| Tue Sep 19 21:42:13 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * qrpt.c (gsl_linalg_QRPT_decomp2): added convenience function to |
| compute q,r unpacked decomposition directly |
| |
| Wed Aug 16 19:50:35 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * svd.c (gsl_linalg_SV_decomp): take more care with singular |
| values, set the associated vectors to zero |
| |
| Sun Aug 13 16:39:40 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * qrpt.c (gsl_linalg_QRPT_decomp): fixed obvious bug in selection |
| of column with max norm |
| |
| Wed May 31 19:42:59 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test.c (test_QR_update): increased tolerances on results to |
| allow tests to pass with other compilers |
| |
| Wed May 3 21:19:45 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * cholesky.c: added cholesky decomposition/solve from Thomas |
| Walter. Modified for GSL. |
| |
| Fri Apr 28 17:13:00 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * renamed all matrices to use upper case variable names, e.g. A |
| |
| Thu Apr 27 20:31:46 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test.c: tightened up accuracy of the decomp test |
| |
| * test_la.c: renamed to test.c for consistency |
| (test_QR_decomp): added the "moler" matrix as a test for SVD |
| |
| * svd.c (gsl_linalg_SV_decomp): improved the convergence criterion |
| for rank deficient case. |
| |
| Wed Apr 26 19:37:46 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * renamed rhs -> b, and solution -> x throughout for consistency |
| |
| Mon Apr 24 17:04:52 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * test_la.c (main): added tests for MxN matrices |
| |
| * test_la.c (main): added tests for SV decomposition and solve. |
| |
| * svd.c (gsl_linalg_SV_decomp): made use of vector row/column |
| functions, tidied up the algorithm a bit. Use a standard tolerance |
| of 10*GSL_DBL_EPSILON. |
| (gsl_linalg_SV_solve): added a least squares solver |
| |
| Sun Apr 23 21:18:04 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * gsl_linalg.h, svd.c (gsl_linalg_SV_decomp): changed function |
| name to new naming convention |
| |
| * qr.c (gsl_linalg_QR_unpack): fixed index ranges for rectangular |
| case when unpacking R |
| |
| Sat Apr 22 15:05:21 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * matrix.c: removed, equivalent functions now in matrix directory |
| |
| Sat Mar 11 17:36:33 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * multiply.c: removed _impl from these functions since all the |
| errors they can return are fatal. |
| |
| Wed Feb 16 12:03:00 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * multiply.c (gsl_la_matmult_mod_impl): fixed error in transposed |
| matrix memory access, expressions should always be of the form |
| M->data[i*M->size2 + j] even when i,j are transposed. |
| |
| Safer to replace matrix access by gsl_matrix_set and |
| gsl_matrix_get, which is what I have done now. Shouldn't be any |
| cost in the production version of the library where we have |
| inlines and range checking off. |
| |
| Tue Feb 15 17:46:19 2000 Brian Gough <bjg@network-theory.co.uk> |
| |
| * tridiag.h (solve_cyc_tridiag): fixed typo in header, was |
| solve_cyctridiag, missing _. |
| |
| * converted all functions to use gsl_permutation instead of |
| gsl_vector_int |
| |
| Fri Oct 1 15:51:02 1999 Brian Gough <bjg@network-theory.co.uk> |
| |
| * temporary changes resulting from changes to block/vector/matrix |
| organization |
| |
| Fri Aug 6 14:42:23 1999 Brian Gough <bjg@network-theory.co.uk> |
| |
| * linalg_simple.c: include <string.h> to declare memcpy |
| |