06. 이산 푸리에 변환 (DFT, Discrete Fourier Transform)
지금까지 다뤘던 푸리에 변환은 연속신호에 대한 변환이었다. 연속 시간에 대한 신호와 연속된 주파수에 대한 변환이었다. 연속 시간이라는 것은 시간과 시간 사이에 빈틈이 없다는 것이다. 주파수 연속이란 것도 마찬가지로 주파수와 주파수간의 간격이 없이 어떠한 주파수라도 있다는 것이다. 반면에, 이산 신호(Discrete Signal)라는 것은 값이 드문 드문 있다는 것이다. 이산(離散) 신호는 시간과 시간 사이가 연속이 아닌, 간격이 있는 신호를 의미한다. 즉, 1초, 2초, 3초, ...처럼 1초 간격으로만 값이 있거나, 0.1ms 마다 값이 있거나 하는 등, 시간을 기준으로 해서 드문드문 값이 있는 신호이다. 여기서 이산(離散)은, 우리말에서는 "이산 가족" 할 때에나 쓰는 말인데, 영어의 discrete..
02. [예제]사인 곡선(사인 그래프, sine graph) 그리기
첫 번째 예제이기에, 상세히 코드를 설명할 것이고, 작성된 코드를 이용해서 mp4 및 gif로 만드는 방법도 소개할 것이다. 이다음 예제부터는 애니메이션 핵심 코드를 중심으로만 설명할 예정. 사인 곡선을 그리는 애니메이션을 만들어볼 것이다. 그런데, 애니메이션 코드로 바로 들어가기 전에, 일반적인 정지되어 있는 사인 곡선을 먼저 그려보겠다. 그것이 애니메이션 코드를 바로 소개하는 것보다, 이해가 더 잘될 거 같다. 사인 곡선을 그리는 코드의 핵심은, 1)$x$에 해당하는 값들을 생성하고, 2) 그 $x$ 값들의 sine값을 구해서 $y$에 저장하고, 3) plot 하는 것. 1) x = np.linspace(0, 2*np.pi, 100) 2) y = np.sin(x) 3) plt.plot(x,y) 주피터..