scipy.fft.

register_backend#

scipy.fft.register_backend(backend)[原始碼]#

註冊一個後端以供永久使用。

已註冊的後端具有最低的優先順序,並將在全球後端之後嘗試。

參數:
backend{object, ‘scipy’}

要使用的後端。可以是包含已知後端名稱 {‘scipy’} 的 str,或是實作 uarray 協定的物件。

引發:
ValueError: 如果後端未實作 numpy.scipy.fft

範例

我們可以註冊一個新的 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