'퓨'리에가 아니다
주의: 이 내용을 이해하려면 미적분, 선형대수학, 해석학 등의 완벽한 이해가 선행되어야 합니다. 그리고 제대로 공부하고 싶으신 분은 여기가 아니라 공업수학, 해석학 책을 참고바랍니다.
1 정의
주어진 함수를 삼각함수 또는 지수함수의 일차결합으로 나타내는 것, 혹은 그 사고방식을 응용하는 해석학의 한 분야. 선형대수학의 언어를 빌리자면, 내적(inner product)
- [math]\displaystyle \langle f | g\rangle = \int f^*(x) g(x) dx [/math]
(적분구간은 그때그때 다르고, 상수가 곱해질 수도 있다.) 을 가진 함수공간 ([math]L^2[/math] 공간이라고 한다)에 대한 정규직교기저로서 삼각함수 혹은 지수함수를 생각하는 것이다.
이러한 관점에서 함수 [math] f_k(x)=e^{ikx} [/math] 는 직교기저를 이룬다고 할 수 있다. 즉 다음의 관계가 성립한다.
[math]\displaystyle \langle f_k | f_{k'} \rangle = \int_{-\infty}^{\infty} e^{-ikx}e^{ik'x} dx = \int_{-\infty}^{\infty} e^{i(k'-k)x} dx =\delta\left(\frac{k'-k}{2\pi}\right) =2\pi \delta(k'-k) [/math]
따라서 각 함수를 [math]\sqrt{2\pi} [/math]로 나눠준 [math]g_k(x)\equiv \frac{1}{\sqrt{2\pi}}e^{ikx} [/math]은 정규직교기저를 이루게 되고, 따라서 이 함수들의 선형결합으로 임의의 함수를 표현하고자 하는 것이 푸리에변환의 기본적인 의의이다. 실제 응용되는 학문에 따라 상수 [math]\sqrt{2\pi} [/math]를 무시하기도 하고, 또 [math]kx [/math] 또는 [math] \omega t[/math] 대신 [math] 2\pi ft[/math] 와 같이 변수를 스케일링해서 사용하기도 한다.
2 푸리에 급수
간단히 설명하면 다음과 같다. 구간 [math]\left[-1, 1\right][/math]에서 [math]f\left(-1\right) = f\left(1\right)[/math]을 만족하는 함수 또는 주기가 2인 함수[1]를 다음과 같이 나타내는 것이다.
- [math]f\left(x\right) = b_0 + a_1 \sin\left(\pi x\right) + b_1 \cos\left(\pi x\right) + a_2 \sin\left(2\pi x\right) + b_2 \cos\left(2\pi x\right) + a_3 \sin\left(3\pi x\right) + b_3 \cos\left(3\pi x\right) + \cdots[/math]
[2]
상수항이 [math]b_0[/math] 인 이유는, [math]1 = \cos\left(0 \pi x\right)[/math]로 취급할 수 있기 때문이다.
계수 [math]a_i[/math] 또는 [math]b_i[/math] 를 구하려면 위에서 사용한 내적을 이용한다. [math]-1[/math]부터 [math]1[/math]까지 적분을 한다고 하면
- [math]\int \sin\left(n\pi x\right) \sin\left(m\pi x\right) dx = \int \sin\left(n\pi x\right) \cos\left(m\pi x\right) dx = \int \cos\left(n\pi x\right) \cos\left(m\pi x\right) = 0, \int \sin\left(n\pi x\right) \sin\left(n\pi x\right) = 1[/math]
인데, 이는 [math]\sin\left(n\pi x\right)[/math]와 [math]\cos\left(m\pi x\right)[/math]의 집합들이 위에 서술한 내적에 대해 서로 직교한다는 것을 의미한다. 따라서 위의 식을 [math]\sin\left(n\pi x\right)[/math]와 내적하면 [math]a_n[/math] 만이 살아남고, 역으로
- [math]a_n = \int f\left(x\right) \sin\left(n\pi x\right) dx[/math]
를 풀어낼 수 있는 것이다. 코사인도 마찬가지.
물론 더욱 중요한 문제는 위 식이 어떻게 의미가 있냐이다. 흔히 다루는 [math]f[/math]가 조각적 미분가능(piecewise differentiable)이고 유계인 경우는 위의 급수가 [3] [math]f\left(x\right)[/math]의 좌극한과 우극한의 평균으로 균등수렴한다. 즉 공대생들은 걱정할 필요 없다는 소리다. 물론 수학자들은 일반적인 경우로 골머리를 앓는다.
푸리에 급수의 다른 서술은 기저함수를 허수지수함수 [math]e^{in\pi x}[/math] ([math]i[/math]는 허수 단위) 로 놓는 것이다. 오일러 공식에 의해
- [math]e^{in\pi x}= \cos\left(n\pi x\right) + i \sin\left(n\pi x\right)[/math]
이므로 삼각함수의 선형결합과 지수함수의 선형결합은 동일하므로 가능하다. 아니 외려 n을 정수라 하고 정수로 번호를 매기면, 지수함수 서술이 훨씬 깔끔하다!
어찌보면 테일러-매클로린 급수가 함수를 다항함수 형식의 무한급수 형태로 나타낸 거라면 푸리에 급수는 함수를 삼각함수(=지수함수) 형식의 무한급수로 나타낸 것이다
여담으로, 개그 콘서트 도찐개찐 15년 3월 8일자에 주기가 [math]2L[/math]인 경우의 일반적인 푸리에 급수의 식이 나온 바 있다(...).[4]
3 푸리에 변환
- 자세한 내용은 푸리에 변환 항목을 참고해주세요.
- 복소수 형식으로 나타나 있지만 처음 정의된 함수가 복소 형식의 극좌표로 정의되지 않는 한 항상 실수 형태로 변환된다
함수 [math]h\left(x\right)[/math]에 대해 [math]F\left[h\right][/math]라는 함수를
- [math]F\left[h\right]\left(t\right) = \int e^{-2 \pi itx} h\left(x\right) dx[/math]
(적분구간은 [math]\left[-\infty,\infty\right][/math], [math]i[/math]는 허수 단위) 로 정의하고, 위 변환 [math]F[/math]를 푸리에 변환이라 정의한다. [5]
역시 위의 식을 언제 정의할 수 있는지가 문제가 된다. 예를 들어 위에서 [math]h\left(x\right)=1[/math]인 경우는 적분이 전혀 의미가 없다. 따라서 보통 변환의 정의역과 공역을 먼저 정해준다. [6] 자주 쓰이는 정의역과 공역의 조합은 (정의역[math]\rightarrow[/math]공역) [math]L^{1} \rightarrow L^{\infty} , L^{2} \rightarrow L^{2} , S \rightarrow S [/math]등이 있다. 여기서 [math]L^{p}[/math] 공간은 적분 [math]\int |h\left(x\right)|^p[/math] 가 존재하는 함수들의 공간, [math]L^\infty[/math] 는 유계함수들의 공간, [math]S[/math]는 슈바르츠 공간(Schwartz space)으로 모든 도함수들이 ([math]x[/math]가 커짐에 따라) 빠르게 감소하는 공간이다.
이 푸리에 변환은 라플라스 변환과 매우 비슷하다. 당장 위의 [math]t[/math]에 [math]is[/math]를 넣어보시라. 함수의 미분은 푸리에 변환을 하면 변수와의 곱이 되고, 곱은 합성곱(컨볼루션, convolution)으로 옮겨진다. 따라서 미분방정식의 라플라스 변환 풀이는 그대로 푸리에 변환 풀이로 고칠 수 있다. 하지만 라플라스 변환보다 훨씬 좋은 점은, 보다 넓은 범위에서 정의되고, 역변환이 매우 쉽다는 것이다. 아니 자기 자신이 그냥 역변환이다! 엄밀하게는 [math]F^{2} h\left(t\right) = F\left[F\left[h\right]\right]\left(t\right) = h\left(-t\right)[/math] 가 성립. [7]
푸리에 변환의 역변환
[math]F^{-1} \left[g\right]\left(x\right) = \int e^{2\pi itx} g\left(t\right) dt[/math]
에서 [math]g = F\left[h\right][/math]로 놓으면
[math]h\left(x\right) = \int e^{2\pi itx} F\left[h\right] dt[/math]
가 되고, 이는 [math]h\left(x\right)[/math]를 지수함수 [math]e^{2\pi itx}[/math] 들의 '연속적 일차결합'으로 나타낼 수 있다는 의미이다. 이러한 취지에서 푸리에 급수와 푸리에 변환을 같이 묶어 푸리에 해석이라 말할 수 있는 것.
4 공학에서
푸리에 해석은 미분방정식, 특히 편미분방정식의 해법에 매우 중요한 기법이다. 미분방정식의 편미분 항목에도 나와 있듯이 해석해를 도출할 수 있는 선형 편미분방정식은 일반적으로 변수분리법을 통해 편미분방정식을 상미분방정식 여러 개의 곱으로 표현한다. 문제는 편미분방정식이 경계값 문제이고, 분리해서 도출해낸 상미분방정식의 해가 대부분 Sin, Cos 의 조합으로 표현되는 것부터 시작된다. 이 경우 경계값을 만족시키게 되는 해가 일정 주기로 무한 개가 쏟아져 나오게 되는 것.
이미 이 항목에 대해 알고도 심심해서 온 위키러나 눈치빠른 위키러라면 알 수 있겠지만, 이렇게 무한급수 형태로 나오는 사인, 코사인 조합은 바로 푸리에 급수로 나타낼 수 있으며, 여기에서 앞서 설명한 사인/코사인 직교성질을 이용해 잘 정리해 주면 경계조건을 만족시키는 편미분방정식의 해가 도출되는 것이다. 한편 앞서도 말했듯이 무한급수 형태로 해가 도출되기 때문에, 속칭 '모드' 내지는 '고유값(eigenvalue)'이라 불리는 해의 특정한 양상이 뽑아져 나올 수 있어 편미분방정식이 기술하는 특정 물리현상의 양상을 손쉽게 수식화할 수 있게 된다.
한편, 특정 신호에서 푸리에 해석의 결과는 주파수 영역에서의 신호 관찰이라고 할 수 있다. 이 결과와 가장 유사한 모습을 볼 수 있는것이 이퀄라이저인데, 이퀄라이저에서 표시하는 것처럼 어떤 신호는 어떤 주파수 성분을 갖고 있는 것을 확인 할 수 있다. 반대로 푸리에 역변환을 이용하면 특정한 주파수 성분의 구성을 갖는 신호를 만들 수 있는데, 이를 이용하여 특정 주파수 대역의 크기를 줄이거나 키우는 등의 디지털 필터 동작을 구성할 수 있다.
주파수 관련한 내용을 많이 다루는 통신공학에서도 사용하는데 AM,FM 등 아날로그 통신의 신호 분석뿐만 아니라, 아예 주파수 영역에서 보았을 때 디지털(2진) 데이터를 만들어 이를 아날로그 신호로 만들어 날리는데, 이것이 바로 현재의 3G, LTE 등에서 사용하는 디지털 통신이다.
또 주로 사용되는 다른 곳은 유체역학이다. 나비에-스톡스 방정식 항목에 나와있듯, 이 방정식은 풀기 어려운 편미분방정식의 형태이지만 몇가지 물리적 조건을 더해서 위 방정식을 푸리에 해석을 통해 컴퓨터로 계산해내는 방법이 많이 쓰인다. 사실상 유체의 몇가지 단순한 경우를 제외하고는 거의 대부분 푸리에 해석을 이용해서 계산해낸다고 보면 된다. [8] [9]
이렇게 중요한 도구다 보니 여기저기에 많이 불려나와 써먹히는 공학인들의 필수요소지만... 사실 배우기가 까다롭다. 대충 이런 물건이란 것 정도야 본 위키나 한국어 위키피디아, 구글 검색 등을 통해 나온 자료를 잘 읽어만 봐도 알 수 있지만 이놈과 얽혀 나오는 편미분방정식이 유도부터 경계값 문제 풀이까지 끝도 없는 계산계산계산이라 열전달/유체역학 후반부 같은 공대생의 천적들과 맞먹는 과목. 아니 애초에 그 천적급 과목에서 나오는 편미분을 풀려면 이 놈들이 들어가야 한다(...) 그래도 공업수학으로 묶어 배우는 각종 tool 중에서도 제일 중요한 툴 중 하나니 가르쳐줄 때 잘 배워두자.
5 물리학에서
양자역학과 고체물리학 이후의 모든 물리학의 수학적 근거.
임의의 공간에서의 모든 파동함수는 반드시 빈 공간의 슈뢰딩거 방정식의 해인 평면파 꼴의 선형 결합으로 표현이 가능하며, 이를 푸리에 공간에서 해석할 시 정량적으로 기술이 가능하기 때문. 여기에서 한 발 더 나아가서, 입자의 위치 및 시간에 대응하는 파동벡터 및 진동수를 입자-파동 이중성의 수학적 근거로 인정하여 정량적으로 기술한다. 학부 양자역학을 수강할 때 입자와 파동의 중간적인 형태로서 'wave packet'을 예제로 풀어보게 된다.
고체물리학에서는 아예 주기성을 갖고 반복되는 계를 풀게 되는데, 이 때의 파동함수를 Bloch wave라 부르며 파동벡터가 슈뢰딩거 방정식을 만족시키는 좋은 양자수가 된다. 이에 대응하는 수많은 물리적 예제들을 배우는 학문이 고체물리학이라 해도 과언이 아닐 정도.- ↑ 둘은 사실상 같은 대상이다.
- ↑ 주의: 푸리에 급수를 구간 [math]\left[-\pi , \pi\right][/math]에서 함수 [math]\sin\left(nx\right), \cos\left(nx\right)[/math]를 생각하는 수학자들도 있다. 절반 정도의 비율.
- ↑ 조각적 연속조건만으로는 충분하지 않다. 모든 점에서 연속이지만 특정한 점에서 푸리에급수가 발산하는 반례를 만들 수 있다. 물론 다른 더 약한 조건들도 존재하고, [math]L^p[/math] 공간에서의 수렴은 훨씬 약한 조건에서도 성립한다.
- ↑ "내 얼굴이 수학 공식(푸리에급수) 도찐개찐" "음?" "뭐가 뭔지 모르겠다"
- ↑ 주의: 푸리에변환을 [math]\int e^{-itx} h\left(x\right) dx[/math]로 정의하는 수학자들도 있다. 역시 절반 정도의 비율.
- ↑ 마치 역삼각함수의 정의역 공역 정하는 걸 생각해 보면 되겠다.
- ↑ 주의: 앞에서 말한 [math]e^{-itx} dx[/math] 를 사용하는 다른 버전에서는 이렇게 두번 합성을 하면 상수 [math]2\pi[/math] 가 붙는다. 이것을 해결하기 위해 푸리에 변환과 역변환 모두에 [math]1/\sqrt{2\pi}[/math] 를 곱해주거나, 역변환만 [math]1/2\pi[/math] 배를 해주는 서로 다른 관습이 있다.
- ↑ 물론 쉬운 유체역학 시뮬레이션 (CFD-전산유체역학 이라고 함)에 한해서 나비에-스톡스 방정식의 이류나 확산부분만을 계산할 때는 방정식이 극단적으로 단순해지기 때문에 푸리에 변환까지 필요없고 단순한 차분([math]dx[/math]대신 [math]\Delta x[/math]를 사용한 컴퓨터에서의 계산)만으로도 쉽게 계산해낼 수 있다.
- ↑ 일반적으로 DNS(Direct Numerical Simulation)기법을 통해서 나비에-스톡스 방정식을 풀경우, Homogeneous, isotropic turbulence가 가정되어 질 때 많이(finite difference method의 경우보다 훨씬 더 정확도가 높다.) 사용된다.
하지만 컴퓨테이션 코스트가 워낙 커서 낮은 레이놀즈수의 범위에서만 적용 가능하다는 게 함정