scipy.fft.
register_backend#
- scipy.fft.register_backend(backend)[source]#
注册一个永久使用的后端。
注册的后端具有最低优先级,将在全局后端之后尝试。
- 参数:
- backend{object, ‘scipy’}
要使用的后端。可以是包含已知后端名称的
str
{‘scipy’} 或实现 uarray 协议的对象。
- 引发:
- ValueError:如果后端未实现
numpy.scipy.fft
。
- ValueError:如果后端未实现
示例
我们可以注册一个新的 fft 后端
>>> from scipy.fft import fft, register_backend, set_global_backend >>> class NoopBackend: # Define an invalid Backend ... __ua_domain__ = "numpy.scipy.fft" ... def __ua_function__(self, func, args, kwargs): ... return NotImplemented >>> set_global_backend(NoopBackend()) # Set the invalid backend as global >>> register_backend("scipy") # Register a new backend # The registered backend is called because # the global backend returns `NotImplemented` >>> fft([1]) array([1.+0.j]) >>> set_global_backend("scipy") # Restore global backend to default