Permalink
Browse files

ENH: sparse/dsolve: upgrade to SuperLU 4.3

Merge branch 'enh/superlu-update'
  • Loading branch information...
pv committed Feb 8, 2012
2 parents 1983db6 + f414439 commit be6c2b63ce2f838156733cf7ca2c62d132ca3017
Showing with 1,861 additions and 1,464 deletions.
  1. +9 −6 scipy/sparse/linalg/dsolve/SuperLU/README
  2. +2 −2 scipy/sparse/linalg/dsolve/SuperLU/SRC/cdiagonal.c
  3. +3 −3 scipy/sparse/linalg/dsolve/SuperLU/SRC/cgsequ.c
  4. +129 −95 scipy/sparse/linalg/dsolve/SuperLU/SRC/cgsisx.c
  5. +21 −12 scipy/sparse/linalg/dsolve/SuperLU/SRC/cgsitrf.c
  6. +17 −17 scipy/sparse/linalg/dsolve/SuperLU/SRC/cgsrfs.c
  7. +28 −25 scipy/sparse/linalg/dsolve/SuperLU/SRC/cgssvx.c
  8. +4 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/clacon.c
  9. +3 −3 scipy/sparse/linalg/dsolve/SuperLU/SRC/clangs.c
  10. +0 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/claqgs.c
  11. +5 −5 scipy/sparse/linalg/dsolve/SuperLU/SRC/cldperm.c
  12. +3 −3 scipy/sparse/linalg/dsolve/SuperLU/SRC/cmemory.c
  13. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/cpanel_bmod.c
  14. +12 −14 scipy/sparse/linalg/dsolve/SuperLU/SRC/cpivotL.c
  15. +3 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/cpivotgrowth.c
  16. +2 −2 scipy/sparse/linalg/dsolve/SuperLU/SRC/creadtriple.c
  17. +2 −2 scipy/sparse/linalg/dsolve/SuperLU/SRC/cutil.c
  18. +0 −58 scipy/sparse/linalg/dsolve/SuperLU/SRC/dGetDiagU.c
  19. +129 −95 scipy/sparse/linalg/dsolve/SuperLU/SRC/dgsisx.c
  20. +25 −11 scipy/sparse/linalg/dsolve/SuperLU/SRC/dgsitrf.c
  21. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/dgsrfs.c
  22. +28 −25 scipy/sparse/linalg/dsolve/SuperLU/SRC/dgssvx.c
  23. +0 −234 scipy/sparse/linalg/dsolve/SuperLU/SRC/dgstrsL.c
  24. +0 −224 scipy/sparse/linalg/dsolve/SuperLU/SRC/dgstrsU.c
  25. +0 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/dlaqgs.c
  26. +4 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/dldperm.c
  27. +3 −3 scipy/sparse/linalg/dsolve/SuperLU/SRC/dmemory.c
  28. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/dpanel_bmod.c
  29. +9 −11 scipy/sparse/linalg/dsolve/SuperLU/SRC/dpivotL.c
  30. +0 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/dpivotgrowth.c
  31. +2 −2 scipy/sparse/linalg/dsolve/SuperLU/SRC/dreadtriple.c
  32. +24 −25 scipy/sparse/linalg/dsolve/SuperLU/SRC/get_perm_c.c
  33. +17 −5 scipy/sparse/linalg/dsolve/SuperLU/SRC/html_mainpage.h
  34. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_ccolumn_dfs.c
  35. +17 −8 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_ccopy_to_ucol.c
  36. +33 −15 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_cdrop_row.c
  37. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_cpanel_dfs.c
  38. +13 −13 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_cpivotL.c
  39. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_dcolumn_dfs.c
  40. +12 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_dcopy_to_ucol.c
  41. +30 −8 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_ddrop_row.c
  42. +4 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_dpivotL.c
  43. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_scolumn_dfs.c
  44. +12 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_scopy_to_ucol.c
  45. +30 −8 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_sdrop_row.c
  46. +4 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_spivotL.c
  47. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_zcolumn_dfs.c
  48. +13 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_zcopy_to_ucol.c
  49. +27 −9 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_zdrop_row.c
  50. +4 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/ilu_zpivotL.c
  51. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/memory.c
  52. +74 −0 scipy/sparse/linalg/dsolve/SuperLU/SRC/qselect.c
  53. +3 −3 scipy/sparse/linalg/dsolve/SuperLU/SRC/scipy_slu_config.h
  54. +3 −3 scipy/sparse/linalg/dsolve/SuperLU/SRC/scomplex.c
  55. +3 −3 scipy/sparse/linalg/dsolve/SuperLU/SRC/scsum1.c
  56. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/sgsequ.c
  57. +129 −95 scipy/sparse/linalg/dsolve/SuperLU/SRC/sgsisx.c
  58. +25 −11 scipy/sparse/linalg/dsolve/SuperLU/SRC/sgsitrf.c
  59. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/sgsrfs.c
  60. +28 −25 scipy/sparse/linalg/dsolve/SuperLU/SRC/sgssvx.c
  61. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/slamch.c
  62. +0 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/slaqgs.c
  63. +4 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/sldperm.c
  64. +109 −12 scipy/sparse/linalg/dsolve/SuperLU/SRC/slu_Cnames.h
  65. +7 −5 scipy/sparse/linalg/dsolve/SuperLU/SRC/slu_cdefs.h
  66. +6 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/slu_ddefs.h
  67. +2 −2 scipy/sparse/linalg/dsolve/SuperLU/SRC/slu_scomplex.h
  68. +7 −5 scipy/sparse/linalg/dsolve/SuperLU/SRC/slu_sdefs.h
  69. +72 −72 scipy/sparse/linalg/dsolve/SuperLU/SRC/slu_util.h
  70. +6 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/slu_zdefs.h
  71. +3 −3 scipy/sparse/linalg/dsolve/SuperLU/SRC/smemory.c
  72. +14 −5 scipy/sparse/linalg/dsolve/SuperLU/SRC/sp_ienv.c
  73. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/spanel_bmod.c
  74. +9 −11 scipy/sparse/linalg/dsolve/SuperLU/SRC/spivotL.c
  75. +0 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/spivotgrowth.c
  76. +2 −2 scipy/sparse/linalg/dsolve/SuperLU/SRC/sreadtriple.c
  77. +71 −0 scipy/sparse/linalg/dsolve/SuperLU/SRC/superlu_enum_consts.h
  78. +8 −6 scipy/sparse/linalg/dsolve/SuperLU/SRC/superlu_timer.c
  79. +19 −8 scipy/sparse/linalg/dsolve/SuperLU/SRC/util.c
  80. +129 −95 scipy/sparse/linalg/dsolve/SuperLU/SRC/zgsisx.c
  81. +20 −11 scipy/sparse/linalg/dsolve/SuperLU/SRC/zgsitrf.c
  82. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/zgsrfs.c
  83. +28 −25 scipy/sparse/linalg/dsolve/SuperLU/SRC/zgssvx.c
  84. +0 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/zlaqgs.c
  85. +4 −4 scipy/sparse/linalg/dsolve/SuperLU/SRC/zldperm.c
  86. +3 −3 scipy/sparse/linalg/dsolve/SuperLU/SRC/zmemory.c
  87. +1 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/zpanel_bmod.c
  88. +9 −11 scipy/sparse/linalg/dsolve/SuperLU/SRC/zpivotL.c
  89. +0 −1 scipy/sparse/linalg/dsolve/SuperLU/SRC/zpivotgrowth.c
  90. +2 −2 scipy/sparse/linalg/dsolve/SuperLU/SRC/zreadtriple.c
  91. +347 −0 scipy/sparse/linalg/dsolve/SuperLU/scipychanges.patch
  92. +0 −23 scipy/sparse/linalg/dsolve/SuperLU/scipychanges.txt
  93. +10 −5 scipy/sparse/linalg/dsolve/_superluobject.c
  94. +7 −1 scipy/sparse/linalg/dsolve/_superluobject.h
@@ -1,4 +1,4 @@
- SuperLU (Version 4.0)
+ SuperLU (Version 4.1)
=====================
Copyright (c) 2003, The Regents of the University of California, through
@@ -77,14 +77,14 @@ on your system setup:
machine specific has been defined in this include file.
Example machine-specific make.inc include files are provided
- in the MAKE_INC/ directory for several systems, such as
- IBM RS/6000, DEC Alpha, SunOS 4.x, SunOS 5.x (Solaris), HP-PA and
- SGI Iris 4.x. When you have selected the machine to which you wish
+ in the MAKE_INC/ directory for several systems, such as Linux,
+ IBM RS/6000, SunOS 5.x (Solaris), HP-PA and MacX.
+ When you have selected the machine to which you wish
to install SuperLU, copy the appropriate sample include file (if one
is present) into make.inc. For example, if you wish to run
- SuperLU on an IBM RS/6000, you can do
+ SuperLU on an linux, you can do
- cp MAKE_INC/make.rs6k make.inc
+ cp MAKE_INC/make.linux make.inc
For the systems other than listed above, slight modifications to the
make.inc file will need to be made.
@@ -154,3 +154,6 @@ The test results are in the files below:
October 15, 2003 Version 3.0
August 1, 2008 Version 3.1
June 30, 2009 Version 4.0
+ November 23, 2010 Version 4.1
+ August 25, 2011 Version 4.2
+
@@ -95,7 +95,7 @@ int cdominate(int n, NCformat *Astore)
{
if ((rowind_new[j + fill] = rowind[j]) == i) diag = j;
nzval_new[j + fill] = nzval[j];
- s += slu_c_abs1(&nzval_new[j + fill]);
+ s += c_abs1(&nzval_new[j + fill]);
}
if (diag >= 0) {
nzval_new[diag+fill].r = s * 3.0;
@@ -122,7 +122,7 @@ int cdominate(int n, NCformat *Astore)
for (j = colptr[i]; j < colptr[i + 1]; j++)
{
if (rowind[j] == i) diag = j;
- s += slu_c_abs1(&nzval[j]);
+ s += c_abs1(&nzval[j]);
}
nzval[diag].r = s * 3.0;
nzval[diag].i = 0.0;
@@ -92,7 +92,7 @@ cgsequ(SuperMatrix *A, float *r, float *c, float *rowcnd,
int i, j, irow;
float rcmin, rcmax;
float bignum, smlnum;
- extern double slamch_(char *);
+ extern float slamch_(char *);
/* Test the input parameters. */
*info = 0;
@@ -127,7 +127,7 @@ cgsequ(SuperMatrix *A, float *r, float *c, float *rowcnd,
for (j = 0; j < A->ncol; ++j)
for (i = Astore->colptr[j]; i < Astore->colptr[j+1]; ++i) {
irow = Astore->rowind[i];
- r[irow] = SUPERLU_MAX( r[irow], slu_c_abs1(&Aval[i]) );
+ r[irow] = SUPERLU_MAX( r[irow], c_abs1(&Aval[i]) );
}
/* Find the maximum and minimum scale factors. */
@@ -162,7 +162,7 @@ cgsequ(SuperMatrix *A, float *r, float *c, float *rowcnd,
for (j = 0; j < A->ncol; ++j)
for (i = Astore->colptr[j]; i < Astore->colptr[j+1]; ++i) {
irow = Astore->rowind[i];
- c[j] = SUPERLU_MAX( c[j], slu_c_abs1(&Aval[i]) * r[irow] );
+ c[j] = SUPERLU_MAX( c[j], c_abs1(&Aval[i]) * r[irow] );
}
/* Find the maximum and minimum scale factors. */
Oops, something went wrong.

0 comments on commit be6c2b6

Please sign in to comment.