1234567891011121314151617181920212223242526272829303132333435363738 |
- # This file is not meant for public use and will be removed in SciPy v2.0.0.
- # Use the `scipy.sparse.linalg` namespace for importing the functions
- # included below.
- import warnings
- from . import _dsolve
- __all__ = [ # noqa: F822
- 'MatrixRankWarning', 'SuperLU', 'factorized',
- 'spilu', 'splu', 'spsolve',
- 'spsolve_triangular', 'use_solver', 'linsolve', 'test'
- ]
- dsolve_modules = ['linsolve']
- def __dir__():
- return __all__
- def __getattr__(name):
- if name not in __all__ and name not in dsolve_modules:
- raise AttributeError(
- "scipy.sparse.linalg.dsolve is deprecated and has no attribute "
- f"{name}. Try looking in scipy.sparse.linalg instead.")
- if name in dsolve_modules:
- msg = (f'The module `scipy.sparse.linalg.dsolve.{name}` is '
- 'deprecated. All public names must be imported directly from '
- 'the `scipy.sparse.linalg` namespace.')
- else:
- msg = (f"Please use `{name}` from the `scipy.sparse.linalg` namespace,"
- " the `scipy.sparse.linalg.eigen` namespace is deprecated.")
- warnings.warn(msg, category=DeprecationWarning, stacklevel=2)
- return getattr(_dsolve, name)
|