코딩일지(2024-05-22)
신호및시스템 DTFT쪽을 복습했다.
이제 곧 있으면 기말고사이다.
기말고사 준비기간에 들어가면 또 코딩할 시간이 부족할까봐, 미리 배웠던 것들으 복습할 겸 파이썬으로 구현해보려고 한다.
그리고 예전에 신시 코딩을 하면서 좀 아쉬웠던게 라이브러리 문법공부의 부족이다.
그래서 이 부분에 대해서 조금 정리를 할까 한다.
그에 앞서 이산신호와 연속신호를 파이썬 코드로 구현하는 방법을 복습하였다.
한가지 알아둘게 보통 0에서 2π까지를 100이상의 점으로 샘플링을 해주고, 그 점들을 입력값으로 하여 컴퓨터에 하나하나 출력점들을 찍어주는 방식이다.
그리고 이를 출력하기 위해서 stem()함수 또는 plot()함수를 사용하는데, 여기서는 모두 다 알고 있겠지만(나만 몰랐나?ㄷㄷ) , stem()은 이산시간 신호를 시각화하는데 사용되고, plot()은 연속시간 신호를 시각화하는데 사용된다.
일단은 스템, stem()으로 구현을 해보고, 나중에 시간되면 잡으러가야겠다.
import numpy as np
import matplotlib.pyplot as plt
def show_DTsinwave_by_gap(omega):
# 시간 범위 설정 (예: 0부터 2π까지)
t = np.linspace(0, 2*np.pi, omega)
# 사인함수를 사용하여 이산 신호 생성
signal = np.sin(t)
# 시간과 신호를 그래프로 플로팅
plt.stem(t, signal, 'r', markerfmt='ro', basefmt='k-')
#plt.plot(t, signal, 'r')
plt.xlabel('Time')
plt.ylabel('Amplitude')
plt.title('Discrete Signal')
plt.grid(True)
plt.show()
댓글남기기