Приложение а исходный код
import math
import cmath
import matplotlib.pyplot as plt
# Номер бригады
Nb = 21
# Длина последовательности
N = 30 + Nb % 5
# Период дискретизации
T = 0.0005 * (1 + Nb % 3)
# Основание экспоненты
a = (-1) ** Nb * (0.8 + 0.005 * Nb)
# Амплитуда гармонического сигнала
C = 1 + Nb % 5
# Частота гармонического сигнала
w0 = math.pi / (6 + Nb % 5)
# Задержка
m = 5 + Nb % 5
# Функция единичного цифрового импульса
def delta_d(k):
return int(k == 0)
# Дискретный единичный скачок
def sigma_d(k):
return int(k >= 0)
# Экспоненциальная функция
def s1(k):
return 0 if k < 0 else a ** k
# Дискретный комплексный гармонический сигнал
def s2(k):
return C * cmath.exp(1j * w0 * k)
# Точки интервала дискретного времени
X = [i * T for i in range(N)]
# Точки интервала дискретного нормированного времени
Xn = [i for i in range(N)]
# Значения сигналов
delta_Y = [delta_d(k) for k in Xn]
sigma_Y = [sigma_d(k) for k in Xn]
s1_Y = [s1(k) for k in Xn]
s2_Y = [s2(k) for k in Xn]
# Значения сигналов задержанных на m отсчётов
delta_Y_slow = [delta_d(k - m) for k in Xn]
sigma_Y_slow = [sigma_d(k - m) for k in Xn]
s1_Y_slow = [s1(k - m) for k in Xn]
s2_Y_slow = [s2(k - m) for k in Xn]
# График единичного цифрового импульса на интервале дискретного времени
plt.plot(X, delta_Y, label='$\delta_d(\dfrac{k}{T})$')
plt.xlabel('$k$')
plt.legend()
!
# График единичного цифрового импульса на интервале дискретного нормированного времени
plt.plot(Xn, delta_Y, 'o--', label='$\delta_d(k)$')
plt.xlabel('$k$')
plt.legend()
!
# График единичного цифрового импульса с задержкой на m отсчётов на интервале дискретного времени
plt.plot(X, delta_Y_slow, label='$\delta_d(\dfrac{k}{T} - m)$')
plt.xlabel('$k$')
plt.legend()
!
# График единичного цифрового импульса с задержкой на m отсчётов на интервале дискретного нормированного времени
plt.plot(Xn, delta_Y_slow, 'o--', label='$\delta_d(k-m)$')
plt.xlabel('$k$')
plt.legend()
!
# График дискретного единичного скачка на интервале дискретного времени
plt.plot(X, sigma_Y, label='$\sigma_d(\dfrac{k}{T})$')
plt.xlabel('$k$')
plt.legend()
!
# График дискретного единичного скачка на интервале дискретного нормированного времени
plt.plot(Xn, sigma_Y, 'o--', label='$\sigma_d(k)$')
plt.xlabel('$k$')
plt.legend()
!
# График дискретного единичного скачка с задержкой на m отсчётов на интервале дискретного времени
plt.plot(X, sigma_Y_slow, label='$\sigma_d(\dfrac{k}{T} - m)$')
plt.xlabel('$k$')
plt.legend()
!
# График дискретного единичного скачка с задержкой на m отсчётов на интервале дискретного нормированного времени
plt.plot(Xn, sigma_Y_slow, 'o--', label='$\sigma_d(k - m)$')
plt.xlabel('$k$')
plt.legend()
!
# График дискретной экспоненциальной функции на интервале дискретного времени
plt.plot(X, s1_Y, label='$s_1(\dfrac{k}{T})$')
plt.xlabel('$k$')
plt.legend()
!
# График дискретной экспоненциальной функции на интервале дискретного нормированного времени
plt.plot(Xn, s1_Y, 'o--', label='$s_1(k)$')
plt.xlabel('$k$')
plt.legend()
!
# График дискретной экспоненциальной функции с задержкой на m отсчётов на интервале дискретного времени
plt.plot(X, s1_Y_slow, label='$s_1(\dfrac{k}{T})$')
plt.xlabel('$k$')
plt.legend()
!
# График дискретной экспоненциальной функции с задержкой на m отсчётов на интервале дискретного нормированного времени
plt.plot(X, s1_Y_slow, 'o--', label='$s_1(k)$')
plt.xlabel('$k$')
plt.legend()
!
# График дискретного комплексного гармонического сигнала на интервале дискретного нормированного времени
plt.plot(Xn, [y.real for y in s2_Y], label='$Re(s_2(k))$')
plt.plot(Xn, [y.imag for y in s2_Y], label='$Im(s_2(k))$')
plt.xlabel('$k$')
plt.legend()
!