Vue d'ensemble

SciPy 1.13, publie le 27 avril 2024, ameliore la STFT (Short-Time Fourier Transform) et le module optimize.

Fonctionnalites principales

STFT amelioree

La classe ShortTimeFFT offre une API plus flexible pour l'analyse temps-frequence.

python
from scipy.signal import ShortTimeFFT
from scipy.signal.windows import gaussian
import numpy as np

T_x, N = 1/20, 1000
t = np.arange(N) * T_x
x = np.sin(2 * np.pi * 5 * t)

win = gaussian(50, std=8, sym=True)
SFT = ShortTimeFFT(win, hop=10, fs=1/T_x)
Sx = SFT.stft(x)

Module optimize

De nouvelles methodes et des performances ameliorees pour la minimisation et l'ajustement de courbes.

python
from scipy.optimize import minimize
import numpy as np

def rosenbrock(x):
    return sum(100*(x[1:]-x[:-1]**2)**2 + (1-x[:-1])**2)

x0 = np.array([0.0, 0.0])
result = minimize(rosenbrock, x0, method='L-BFGS-B')
print(f'Minimum : {result.fun:.6f}')

Sources