bundles / scipy 1.17.1 / scipy / signal / _filter_design / normalize
function
scipy.signal._filter_design:normalize
Signature
def normalize ( b , a ) Summary
Normalize numerator/denominator of a continuous-time transfer function.
Extended Summary
If values of b are too close to 0, they are removed. In that case, a BadCoefficients warning is emitted.
Parameters
b: array_likeNumerator of the transfer function. Can be a 2-D array to normalize multiple transfer functions.
a: array_likeDenominator of the transfer function. At most 1-D.
Returns
: num: arrayThe numerator of the normalized transfer function. At least a 1-D array. A 2-D array if the input
numis a 2-D array.: den: 1-D arrayThe denominator of the normalized transfer function.
Notes
Coefficients for both the numerator and denominator should be specified in descending exponent order (e.g., s^2 + 3s + 5 would be represented as [1, 3, 5]).
Array API Standard Support
normalize has experimental support for Python Array API Standard compatible backends in addition to NumPy. Please consider testing these features by setting an environment variable SCIPY_ARRAY_API=1 and providing CuPy, PyTorch, JAX, or Dask arrays as array arguments. The following combinations of backend and device (or other capability) are supported.
==================== ==================== ==================== Library CPU GPU ==================== ==================== ==================== NumPy ✅ n/a CuPy n/a ✅ PyTorch ✅ ✅ JAX ⚠️ no JIT ⛔ Dask ⚠️ computes graph n/a ==================== ==================== ====================
See
dev-arrayapifor more information.
Examples
from scipy.signal import normalize
Normalize the coefficients of the transfer function
``(3*s^2 - 2*s + 5) / (2*s^2 + 3*s + 1)``:
b = [3, -2, 5] a = [2, 3, 1] normalize(b, a)A warning is generated if, for example, the first coefficient of `b` is 0. In the following example, the result is as expected:
import warnings with warnings.catch_warnings(record=True) as w: num, den = normalize([0, 3, 6], [2, -5, 4])
num den
print(w[0].message)
Aliases
-
scipy.signal.normalize