(考えてみたら、周期を一般の とした式を書くべきだな…)
Mathematica には、 離散フーリエ変換をするための Fourier[ ] がある。
周期 の周期関数
があるとき、
区間
の
等分点
(1) | ![]() ![]() |
(2) | ![]() ![]() |
(3) | ![]() ![]() |
(4) | ![]() ![]() ![]() |
InverseFourier[] という逆変換が用意されている。
簡単に証明できる良く知られた事実 | ||||||||||||
|
Mathematica では、
長さ のリスト u={
} があるとき、
v=Fourier[u,FourierParameters->{![]() ![]() |
特に
v=Fourier[u,FourierParameters->{-1,-1}] |
三角級数の係数を再生 |
a0 = 1 a = {1, 2, 3, 4, 5} b = {6, 7, 8, 9, 10} u[t_]:=a0/2+a . Table[Cos[n t],{n,Length[a]}]+b . Table[Sin[n t],{n,Length[b]}] n = 12 ts = Table[2 Pi (j - 1)/n, {j, n}]; us = u[ts]; cs = Fourier[us, FourierParameters -> {-1, -1}] A0 = 2 cs[[1]] A = Table[cs[[k + 1]] + cs[[n - k + 1]], {k, 5}] B = I Table[cs[[k + 1]] - cs[[n - k + 1]], {k, 5}] |
桂田 祐史