(* 20210929fourier.nb *)
(* 評価→ノートブックを評価 *)

(* Part 1: 関数 f の設定 *)

Clear[f0,f,g0,g,s,sg,x,k,ak]

f0[x_]:=x^2

f[x_]:=f0[Mod[x,2Pi,-Pi]]

??Mod

Plot[f[x],{x,-10,10}]

(* Part 2: Fourier係数の計算の確認 --- 省略可能 *)

ak=Integrate[f[x]Cos[k x],{x,-Pi,Pi}]/Pi

Simplify[ak,Assumptions->Element[k,Integers]]

(* k が 0 の場合は？ *)

Integrate[f[x],{x,-Pi,Pi}]/Pi

(* 使い方に注意が必要だが、直接計算する関数がある *)

FourierCosCoefficient[f[x],x,n]

FourierCosCoefficient[f[x],x,0]

(* Part 3: 部分和を用意 *)

s[n_,x_]:=Pi^2/3-4Sum[(-1)^(k-1) Cos[k x]/k^2,{k,1,n}]

Plot[s[10,x],{x,-10,10}]

Manipulate[Plot[{s[n,x],f[x]},{x,-10,10}],{n,1,20,1}]

(* n を変えてどうなるか見てみること *)

(* Part 4: 関数 g も加えて比較する *)

g0[x_]:=2x

g[x_]:=g0[Mod[x,2Pi,-Pi]]

Plot[g[x],{x,-10,10}]

FourierSinCoefficient[g[x],x,n]

sg[n_,x_]:=4Sum[(-1)^(k-1)Sin[k x]/k,{k,1,n}]

Manipulate[Plot[{sg[n,x],g[x]},{x,-10,10},PlotRange->{-8,8},PlotPoints->500],{n,1,100,1}]