Вот задание:
Построение единичного прямоугольного импульса: задать промежуток значений времени10 секунд, частота дискретизации 256 Гц. Построить график единичного прямоугольного импульса шириной 300 мс, с центром в момент времени 4 с.
Вот такой код есть, но почему то он строит треугольный ипульс:

Построение единичного прямоугольного импульса: задать промежуток значений времени10 секунд, частота дискретизации 256 Гц. Построить график единичного прямоугольного импульса шириной 300 мс, с центром в момент времени 4 с.
Вот такой код есть, но почему то он строит треугольный ипульс:

Python:
import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
def rect(T):
"""create a centered rectangular pulse of width $T"""
return lambda t: (-T/2 <= t) & (t < T/2)
def pulse_train(t, at, shape):
"""create a train of pulses over $t at times $at and shape $shape"""
return np.sum(shape(t - at[:,np.newaxis]), axis=0)
sig = pulse_train(
t= np.linspace(0, 10, 10, endpoint=False), # time domain
at=np.array([4]), # times of pulses
shape=rect(0.3) # shape of pulse
)
plt.plot(sig)
Последнее редактирование: