MapleV hat kein eigenes Kommando für die Fourierreihenentwicklung. Man kann aber eine Prozedur schreiben, die diese Entwicklung durchführt.
restart: ff:= ;# (* Funktion eingeben *) tt:= ;# (* Variable eingeben *) TT:= ; # (* Periode *) nn:= ;# (* Anzahl der Summationsglieder *) r:= ;#(* Rundungsprozedur ,r = Anzahl der Nachkommastellen *) rund:=t->evalf(round(evalf(t)*10^r)/10^r): `(* Berechnung der Fourierkoeffizienten *)`: ak:=2/T_*Int(f_*cos(2*Pi*t_*k_/T_),t_=0..T_): bk:=2/T_*Int(f_*sin(2*Pi*t_*k_/T_),t_=0..T_): `(* Prozedur zur Entwicklung *)`: fourierreihe:=(f,t,T,n)-> rund(subs(k_=0,f_=f,t_=t,T_=T,ak/2))+ sum('rund(subs(k_=i,f_=f,t_=t,T_=T,ak))'*cos(2*Pi*i*t/T),i=0..n)+ sum('rund(subs(k_=i,f_=f,t_=t,T_=T,bk))'*sin(2*Pi*i*t/T),i=0..n): fr:=fourierreihe(ff,tt,TT,nn);
Beispiel: Sägezahnkurve.
restart: ff:= t ; tt:= t ; TT:= Pi ; nn:= 10 ; `(* Rundungsprozedur ,r = Anzahl der Nachkommastellen *)`; r:= 5 ; rund:=t->evalf(round(evalf(t)*10^r)/10^r): `(* Berechnung der Fourierkoeffizienten *)`: ak:=2/T_*Int(f_*cos(2*Pi*t_*k_/T_),t_=0..T_): bk:=2/T_*Int(f_*sin(2*Pi*t_*k_/T_),t_=0..T_): `(* Prozedur zur Entwicklung *)`: fourierreihe:=(f,t,T,n)-> rund(subs(k_=0,f_=f,t_=t,T_=T,ak/2))+ sum('rund(subs(k_=i,f_=f,t_=t,T_=T,ak))'*cos(2*Pi*i*t/T),i=0..n)+ sum('rund(subs(k_=i,f_=f,t_=t,T_=T,bk))'*sin(2*Pi*i*t/T),i=0..n): fr:=fourierreihe(ff,tt,TT,nn); plot(fr,t=-Pi..2*Pi);