서로 다른 주파수는 이렇게 양수와 음수가 지워지는 경우가 많다. 이 “지워짐”이 DFT에서 맞지 않는 주파수가 작게 나오는 이유다.
손풀이 체크
(1,2)⋅(3,4)는?
답 보기
1⋅3+2⋅4=11
[1,1,1,1]⋅[1,0,−1,0]은?
답 보기
1+0−1+0=0
내적이 0이면 두 방향은 어떤 관계라고 볼 수 있을까?
답 보기
서로 같은 방향 성분이 남지 않는 직교 관계로 볼 수 있다.
다음으로 이어지는 생각
복소수 곱셈은 벡터를 회전하고 늘리는 움직임처럼 볼 수 있다.
이번 장에서 기억할 3문장
내적은 두 벡터가 같은 방향으로 얼마나 겹치는지 재는 숫자다.
수직인 두 벡터의 같은 방향 성분은 없으므로 내적은 0이 된다.
DFT도 신호와 검사 파동이 얼마나 잘 맞는지 재는 내적 관점으로 볼 수 있다.
C++ Practice
C++로 확인하기
내적 x⋅y=∑x[n]y[n]과 직교를 배열로 확인하기
#include <iostream>#include <vector>usingnamespace std;
intdot(constvector<int>& a, constvector<int>& b) {
int result =0;
for (int i =0; i < static_cast<int>(a.size()); ++i) {
result += a[i] * b[i];
}
return result;
}
intmain() {
vector<int> a = {1, 0, -1, 0};
vector<int> b = {0, 1, 0, -1};
vector<int> c = {1, 1, 1, 1};
cout <<"a dot b = "<<dot(a, b) <<"\n";
cout <<"a dot c = "<<dot(a, c) <<"\n";
}