Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1 / 0303_Arhipov_Bolkunov_Kalmak_цос1.docx
Скачиваний:
2
Добавлен:
10.03.2024
Размер:
420.8 Кб
Скачать

Приложение а исходный код

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()

!

Соседние файлы в папке 1