📄 changelog
字号:
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 error2005-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 termination2005-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 function2004-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 decompositions2004-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 checking2004-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 test2004-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 tests2004-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 matrix2003-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 other2003-05-30 Brian Gough <bjg@network-theory.co.uk> * householder.c (gsl_linalg_householder_hv): converted to use blas routines2003-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 bFri 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 = 0Mon 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=0Wed 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 LUTue Sep 4 17:22:58 2001 Brian Gough <bjg@network-theory.co.uk> * luc.c: added LU decomposition for complex matricesWed 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 calculationSun Jul 1 22:43:22 2001 Brian Gough <bjg@network-theory.co.uk> * modified to use new-style vector views, affects most functionsWed Jun 20 13:38:24 2001 Brian Gough <bjg@network-theory.co.uk> * svd.c (gsl_linalg_SV_decomp): added error checkingTue 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 matrixSun 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.cWed 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 callThu May 17 17:01:45 2001 Brian Gough <bjg@network-theory.co.uk> * qr.c (gsl_linalg_QR_lssolve): added least squares solverSat 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 > NMon 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 pointersFri Apr 13 20:43:38 2001 Brian Gough <bjg@network-theory.co.uk> * test.c: replaced uses of matmult by dgemmSun 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 directlyWed 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 zeroSun 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 normWed 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 compilersWed 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. AThu 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 consistencyMon 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 solverSun 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 RSat Apr 22 15:05:21 2000 Brian Gough <bjg@network-theory.co.uk> * matrix.c: removed, equivalent functions now in matrix directorySat 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_intFri Oct 1 15:51:02 1999 Brian Gough <bjg@network-theory.co.uk> * temporary changes resulting from changes to block/vector/matrix organizationFri Aug 6 14:42:23 1999 Brian Gough <bjg@network-theory.co.uk> * linalg_simple.c: include <string.h> to declare memcpy
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -