Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

MAINT: arpack: disable single-precision eigs/eigsh routines on all pl…

…atforms.

Failures, hangs and crashes have been reported on both 64-bit OS X and multiple
Linux systems.  Until the cause of this is found, these routines should remain
disabled.
  • Loading branch information...
commit 8d749358d11849327c330ab7c15d2d060c74405d 1 parent 4227f33
@rgommers rgommers authored
Showing with 10 additions and 10 deletions.
  1. +10 −10 scipy/sparse/linalg/eigen/arpack/arpack.py
View
20 scipy/sparse/linalg/eigen/arpack/arpack.py
@@ -55,16 +55,16 @@
from scipy.linalg.lapack import get_lapack_funcs
-def _darwin_cast(typechar):
+def _single_precision_cast(typechar):
# This check is required, for now, because we have unresolved crashes
- # occurring in single precision Veclib routines, on 64-bit OSX.
- # When these crashes are resolved, this restriction can be removed.
- if sys.platform == 'darwin' or True:
- if typechar in ('f', 'F'):
- warnings.warn("Single-precision types in `eigs` and `eighs` "
- "are not supported on the OSX platform currently. "
- "Double precision routines are used instead.")
- return {'f': 'd', 'F': 'D'}[typechar]
+ # occurring in single precision Veclib routines, on at least 64-bit OSX
+ # and some Linux systems. When these crashes are resolved, this
+ # restriction can be removed.
+ if typechar in ('f', 'F'):
+ warnings.warn("Single-precision types in `eigs` and `eighs` "
+ "are not supported currently. "
+ "Double precision routines are used instead.")
+ return {'f': 'd', 'F': 'D'}[typechar]
return typechar
@@ -326,7 +326,7 @@ def __init__(self, n, k, tp, mode=1, sigma=None,
if tp not in 'fdFD':
raise ValueError("matrix type must be 'f', 'd', 'F', or 'D'")
- tp = _darwin_cast(tp)
+ tp = _single_precision_cast(tp)
if v0 is not None:
# ARPACK overwrites its initial resid, make a copy
Please sign in to comment.
Something went wrong with that request. Please try again.