Application Center - Maplesoft

App Preview:

FOURIER Series

You can switch back to the summary page by clicking here.

Learn about Maple
Download Application


 

Image 

 

 

 

FOURIER Series 

 

Univ.-Prof. Dr.-Ing. habil. Josef  BETTEN 

RWTH Aachen University 

Templergraben 55 

D-52056  A a c h e n ,  Germany 

betten@mmw.rwth-aachen.de 

 

 

 

Abstract 

 

This worksheet is concerned with FOURIER series. Some examples are discussed  

using MAPLE V, Release 10.  

 

 

Keywords:  FOURIER expansion; odd and even functions;  HEAVISIDE function;  

                   continuous functions with cusps; L-two norm  

 

 

 

FOURIER Expansion 

                                                                                   

restart:                                                             FOURIER_series:=               a[0]/2+sum(a[k]*cos(k*x)+b[k]*sin(k*x),k=1..infinity); 

`:=`(FOURIER_series, `+`(`*`(`/`(1, 2), `*`(a[0])), sum(`+`(`*`(a[k], `*`(cos(`*`(k, `*`(x))))), `*`(b[k], `*`(sin(`*`(k, `*`(x)))))), k = 1 .. infinity))) (1)
 

 

> a[k]:=(1/Pi)*Int(f(x)*cos(k*x),x=-Pi..Pi); # k=0,1,2,3,...
 

`:=`(a[k], `+`(`*`(`/`(1, `*`(Pi)), `*`(Int(`*`(f(x), `*`(cos(`*`(k, `*`(x))))), x = `+`(`-`(Pi)) .. Pi))))) (2)
 

> a[0]:=simplify(subs(k=0,%));
 

`:=`(a[0], `+`(`*`(`/`(1, `*`(Pi)), `*`(Int(f(x), x = `+`(`-`(Pi)) .. Pi))))) (3)
 

> b[k]:=(1/Pi)*Int(f(x)*sin(k*x),x=-Pi..Pi); # k=1,2,3,...
 

`:=`(b[k], `+`(`*`(`/`(1, `*`(Pi)), `*`(Int(`*`(f(x), `*`(sin(`*`(k, `*`(x))))), x = `+`(`-`(Pi)) .. Pi))))) (4)
 

 

ODD and Even Functions 

 

> odd_function:=f(x)=x;
 

`:=`(odd_function, f(x) = x) (5)
 

> A[0]:=value(subs(f(x)=x,a[0]));
 

`:=`(A[0], 0) (6)
 

> A[k]:=value(subs(f(x)=x,a[k]));
 

`:=`(A[k], 0) (7)
 

For odd functions the coefficients A[k],  k = 0,1,2.. are identical to zero. 

 

> B[k]:=value(subs(f(x)=x,b[k]));
 

`:=`(B[k], `+`(`-`(`/`(`*`(2, `*`(`+`(`-`(sin(`*`(Pi, `*`(k)))), `*`(cos(`*`(Pi, `*`(k))), `*`(k, `*`(Pi)))))), `*`(Pi, `*`(`^`(k, 2))))))) (8)
 

> B[k]:=subs({sin(Pi*k)=0,cos(Pi*k)=(-1)^k},%);
 

`:=`(B[k], `+`(`-`(`/`(`*`(2, `*`(`^`(-1, k))), `*`(k))))) (9)
 

> FOURIER_series[f(x)=x][k=4]:=sum(B[k]*sin(k*x),k=1..4);
 

`:=`(FOURIER_series[f(x) = x][k = 4], `+`(`*`(2, `*`(sin(x))), `-`(sin(`+`(`*`(2, `*`(x))))), `*`(`/`(2, 3), `*`(sin(`+`(`*`(3, `*`(x)))))), `-`(`*`(`/`(1, 2), `*`(sin(`+`(`*`(4, `*`(x))))))))) (10)
 

> for i in [2,4,5] do FOURIER_series[f(x)=x][k=i]:=             subs(k=i,sum(B[k]*sin(k*x),k=1..i)) od;
 

`:=`(FOURIER_series[f(x) = x][k = 2], `+`(`*`(2, `*`(sin(x))), `-`(sin(`+`(`*`(2, `*`(x))))))) (11)
 

`:=`(FOURIER_series[f(x) = x][k = 4], `+`(`*`(2, `*`(sin(x))), `-`(sin(`+`(`*`(2, `*`(x))))), `*`(`/`(2, 3), `*`(sin(`+`(`*`(3, `*`(x)))))), `-`(`*`(`/`(1, 2), `*`(sin(`+`(`*`(4, `*`(x))))))))) (11)
 

`:=`(FOURIER_series[f(x) = x][k = 5], `+`(`*`(2, `*`(sin(x))), `-`(sin(`+`(`*`(2, `*`(x))))), `*`(`/`(2, 3), `*`(sin(`+`(`*`(3, `*`(x)))))), `-`(`*`(`/`(1, 2), `*`(sin(`+`(`*`(4, `*`(x))))))), `*`(`/`... (11)
 

compact form: 

> y(x,n)[f(x)=x]:=Sum(B[k]*sin(k*x),k=1..n);
 

`:=`(y(x, n)[f(x) = x], Sum(`+`(`-`(`/`(`*`(2, `*`(`^`(-1, k), `*`(sin(`*`(k, `*`(x)))))), `*`(k)))), k = 1 .. n)) (12)
 

> y(x,4)[f(x)=x]:=value(subs(n=4,%));
 

`:=`(y(x, 4)[f(x) = x], `+`(`*`(2, `*`(sin(x))), `-`(sin(`+`(`*`(2, `*`(x))))), `*`(`/`(2, 3), `*`(sin(`+`(`*`(3, `*`(x)))))), `-`(`*`(`/`(1, 2), `*`(sin(`+`(`*`(4, `*`(x))))))))) (13)
 

> for i in [1,10,100] do       y(x,n=i):=2*subs(n=i,sum((-1)^(n-1)*sin(n*x)/n,n=1..i)) od:
 

> plot({y(x,n=1),y(x,n=10),y(x,n=100)},x=-4*Pi..4*Pi,color=black,                             title="FOURIER-series with  n = [1, 10, 100]  for f(x) = x");
 

Plot_2d  
 

 

 

> even_function:=f(x)=x^2;
 

`:=`(even_function, f(x) = `*`(`^`(x, 2))) (14)
 

> A[0]:=value(subs(f(x)=x^2,a[0]));
 

`:=`(A[0], `+`(`/`(`*`(2, `*`(`^`(Pi, 2))), `*`(3)))) (15)
 

> A[k]:=value(subs(f(x)=x^2,a[k]));
 

`:=`(A[k], `+`(`/`(`*`(2, `*`(`+`(`-`(`*`(2, `*`(sin(`*`(Pi, `*`(k)))))), `*`(`^`(k, 2), `*`(sin(`*`(Pi, `*`(k))), `*`(`^`(Pi, 2)))), `*`(2, `*`(cos(`*`(Pi, `*`(k))), `*`(k, `*`(Pi))))))), `*`(Pi, `*`... (16)
 

   
 

> A[k]:=subs({sin(Pi*k)=0,cos(Pi*k)=(-1)^k},%);
 

`:=`(A[k], `+`(`/`(`*`(4, `*`(`^`(-1, k))), `*`(`^`(k, 2))))) (17)
 

   
 

> B[k]:=value(subs(f(x)=x^2,b[k]));
 

`:=`(B[k], 0) (18)
 

For even functions the coefficients  B[k] are identical to zero. 

 

> y(x,n)[f(x)=x^2]:=A[0]/2+Sum(A[k]*cos(k*x),k=1..n);
 

`:=`(y(x, n)[f(x) = `*`(`^`(x, 2))], `+`(`/`(`*`(`^`(Pi, 2)), `*`(3)), Sum(`+`(`/`(`*`(4, `*`(`^`(-1, k), `*`(cos(`*`(k, `*`(x)))))), `*`(`^`(k, 2)))), k = 1 .. n))) (19)
 

> y(x,4)[f(x)=x^2]:=value(subs(n=4,%));
 

`:=`(y(x, 4)[f(x) = `*`(`^`(x, 2))], `+`(`/`(`*`(`^`(Pi, 2)), `*`(3)), `-`(`*`(4, `*`(cos(x)))), cos(`+`(`*`(2, `*`(x)))), `-`(`*`(`/`(4, 9), `*`(cos(`+`(`*`(3, `*`(x))))))), `*`(`/`(1, 4), `*`(cos(`+... (20)
 

> for i in [1,10,100] do       y(x,n=i):=Pi^2/3+subs(n=i,4*sum((-1)^n*cos(n*x)/n^2,                     n=1..i)) od:
 

> plot({y(x,n=1),y(x,n=10),y(x,n=100)},                  x=-4*Pi..4*Pi,color=black,                                                 title="FOURIER-series # n = [1, 10, 100] for f(x) = x^2");
 

Plot_2d  
 

Function  f(x) = (x  - X)^2  in several ranges: 

> f(x)[-2*Pi]:=(x+2*Pi)^2;  x = [-3*Pi,  -Pi];
 

`:=`(f(x)[`+`(`-`(`*`(2, `*`(Pi))))], `*`(`^`(`+`(x, `*`(2, `*`(Pi))), 2))) (21)
 

x = [`+`(`-`(`*`(3, `*`(Pi)))), `+`(`-`(Pi))] (21)
 

> f(x)[0]:=x^2;   x = [-Pi,  Pi];
 

`:=`(f(x)[0], `*`(`^`(x, 2))) (22)
 

x = [`+`(`-`(Pi)), Pi] (22)
 

> f(x)[2*Pi]:=(x-2*Pi)^2;   x = [Pi,  3*Pi];
 

`:=`(f(x)[`+`(`*`(2, `*`(Pi)))], `*`(`^`(`+`(x, `-`(`*`(2, `*`(Pi)))), 2))) (23)
 

x = [Pi, `+`(`*`(3, `*`(Pi)))] (23)
 

> alias(H=Heaviside,th=thickness,co=color):
 

> p[1]:=plot(f(x)[-2*Pi],x=-3*Pi..-Pi,0..Pi^2,th=2,co=black):
 

> p[2]:=plot(f(x)[0],x=-Pi..Pi,th=3,co=black):
 

> p[3]:=plot(f(x)[2*Pi],x=Pi..3*Pi,th=2,co=black):
 

> p[4]:=plot({Pi^2,Pi^2*H(x+3*Pi),Pi^2*H(x-3*Pi),   Pi^2*H(x+2*Pi),Pi^2*H(x-2*Pi)},                   x=-3.001*Pi..3.001*Pi,co=black,                                  title="Quadratic functions with the period  2*Pi"):
 

> plots[display]({seq(p[k],k=1..4)});
 

Plot_2d  
 

> constant_load:=q;
 

`:=`(constant_load, q) (24)
 

> A[0]:=value(subs(f(x)=q,a[0]));
 

`:=`(A[0], `+`(`*`(2, `*`(q)))) (25)
 

> A[k]:=value(subs(f(x)=q,a[k]));
 

`:=`(A[k], `+`(`/`(`*`(2, `*`(sin(`*`(Pi, `*`(k))), `*`(q))), `*`(Pi, `*`(k))))) (26)
 

> limit_value:=Limit(A[k],k=0)=limit(%,k=0);
 

`:=`(limit_value, Limit(`+`(`/`(`*`(2, `*`(sin(`*`(Pi, `*`(k))), `*`(q))), `*`(Pi, `*`(k)))), k = 0) = `+`(`*`(2, `*`(q)))) (27)
 

> B[k]:=value(subs(f(x)=q,b[k]));
 

`:=`(B[k], 0) (28)
 

> y(x,n)[f=q]:=q+Sum((2*q*sin(Pi*k)/Pi/k)*cos(k*x),k=1..n);
 

`:=`(y(x, n)[f = q], `+`(q, Sum(`+`(`/`(`*`(2, `*`(q, `*`(sin(`*`(Pi, `*`(k))), `*`(cos(`*`(k, `*`(x))))))), `*`(Pi, `*`(k)))), k = 1 .. n))) (29)
 

> y(x,n)[f=q]:=                   simplify(subs({sin(Pi*k)=0,cos(Pi*k)=(-1)^k},%));
 

`:=`(y(x, n)[f = q], q) (30)
 

The solution is trivial. For all  k  yields:  y(x, k...n) = q. 

 

> another_example:=f=1+x;
 

`:=`(another_example, f = `+`(1, x)) (31)
 

> A[0]:=value(subs(f(x)=1+x,a[0]));
 

`:=`(A[0], 2) (32)
 

   
 

> A[k]:=value(subs(f(x)=1+x,a[k]));
 

`:=`(A[k], `+`(`/`(`*`(2, `*`(sin(`*`(Pi, `*`(k))))), `*`(Pi, `*`(k))))) (33)
 

> limit_value:=Limit(A[k],k=0)=limit(2*sin(Pi*k)/Pi/k,k=0);
 

`:=`(limit_value, Limit(`+`(`/`(`*`(2, `*`(sin(`*`(Pi, `*`(k))))), `*`(Pi, `*`(k)))), k = 0) = 2) (34)
 

> B[k]:=value(subs(f(x)=1+x,b[k]));
 

`:=`(B[k], `+`(`-`(`/`(`*`(2, `*`(`+`(`-`(sin(`*`(Pi, `*`(k)))), `*`(cos(`*`(Pi, `*`(k))), `*`(k, `*`(Pi)))))), `*`(Pi, `*`(`^`(k, 2))))))) (35)
 

> B[k]:=subs({sin(Pi*k)=0,cos(Pi*k)=(-1)^k},%);
 

`:=`(B[k], `+`(`-`(`/`(`*`(2, `*`(`^`(-1, k))), `*`(k))))) (36)
 

   
 

> y(x,n)[f=1+x]:=1+Sum(B[k]*sin(k*x),k=1..n);
 

`:=`(y(x, n)[f = `+`(1, x)], `+`(1, Sum(`+`(`-`(`/`(`*`(2, `*`(`^`(-1, k), `*`(sin(`*`(k, `*`(x)))))), `*`(k)))), k = 1 .. n))) (37)
 

> y(x,4)[f=1+x]:=value(subs(n=4,%));
 

`:=`(y(x, 4)[f = `+`(1, x)], `+`(1, `*`(2, `*`(sin(x))), `-`(sin(`+`(`*`(2, `*`(x))))), `*`(`/`(2, 3), `*`(sin(`+`(`*`(3, `*`(x)))))), `-`(`*`(`/`(1, 2), `*`(sin(`+`(`*`(4, `*`(x))))))))) (38)
 

> for i in [1,4,100] do         y(x,n=i):=1+subs(n=i,sum(2*sin(Pi*n)*cos(n*x)/Pi/n- (2*(-sin(Pi*n)+cos(Pi*n)*Pi*n)*sin(n*x))/Pi/n^2,                         n=1..i)) od:
 

> plot({1,y(x,n=1),y(x,n=4),y(x,n=100)},x=-4*Pi..4*Pi,co=black,      title="FOURIER series # n = [1, 4, 100] for f(x) = 1+x");
 

Plot_2d  
 

 

FOURIER  Representation of the HEAVISIDE  Function  

 

> alias(H=Heaviside):
 

> F(x)[H_odd]:=H(x)+2*sum((-1)^n*H(x-n*Pi),n=1..N)- H(-x)+2*sum((-1)^n*H(x+n*Pi),n=1..N);
 

`:=`(F(x)[H_odd], `+`(H(x), `*`(2, `*`(sum(`*`(`^`(-1, n), `*`(H(`+`(x, `-`(`*`(Pi, `*`(n))))))), n = 1 .. N))), `-`(H(`+`(`-`(x)))), `*`(2, `*`(sum(`*`(`^`(-1, n), `*`(H(`+`(x, `*`(Pi, `*`(n)))))), n... (39)
 

> f(x)[H_odd]:=subs(N=4,%);
 

`:=`(f(x)[H_odd], `+`(H(x), `*`(2, `*`(sum(`*`(`^`(-1, n), `*`(H(`+`(x, `-`(`*`(Pi, `*`(n))))))), n = 1 .. 4))), `-`(H(`+`(`-`(x)))), `*`(2, `*`(sum(`*`(`^`(-1, n), `*`(H(`+`(x, `*`(Pi, `*`(n)))))), n... (40)
 

> plot(%,x=-4.5*Pi..4.5*Pi,co=black);
 

Plot_2d  
 

> A[0]:=value(subs(f(x)=f(x)[H_odd],a[0]));
 

`:=`(A[0], 0) (41)
 

> A[k]:=value(simplify(subs(f(x)=f(x)[H_odd],a[k])));
 

`:=`(A[k], 0) (42)
 

> B[k]:=simplify(value(subs(f(x)=f(x)[H_odd],b[k])));
 

`:=`(B[k], `+`(`-`(`/`(`*`(2, `*`(`+`(cos(`*`(Pi, `*`(k))), `-`(1)))), `*`(Pi, `*`(k)))))) (43)
 

> B[k]:=subs(cos(Pi*k)=(-1)^k,%);
 

`:=`(B[k], `+`(`-`(`/`(`*`(2, `*`(`+`(`^`(-1, k), `-`(1)))), `*`(Pi, `*`(k)))))) (44)
 

> y(x,n)[f=H_odd]:=sum(B[k]*sin(k*x),k=1..n);
 

`:=`(y(x, n)[f = H_odd], sum(`+`(`-`(`/`(`*`(2, `*`(`+`(`^`(-1, k), `-`(1)), `*`(sin(`*`(k, `*`(x)))))), `*`(Pi, `*`(k))))), k = 1 .. n)) (45)
 

> y(x,4)[H_odd]:=value(subs(n=4,%));
 

`:=`(y(x, 4)[H_odd], sum(`+`(`-`(`/`(`*`(2, `*`(`+`(`^`(-1, k), `-`(1)), `*`(sin(`*`(k, `*`(x)))))), `*`(Pi, `*`(k))))), k = 1 .. 4)) (46)
 

> for i in [1,2,3,4,5,6] do                y(x,n=i):=subs(n=i,2*sum(((1-(-1)^n)/Pi/n)*sin(n*x),                     n=1..i)) od;    
 

`:=`(y(x, n = 1), `+`(`/`(`*`(4, `*`(sin(x))), `*`(Pi)))) (47)
 

`:=`(y(x, n = 2), `+`(`/`(`*`(4, `*`(sin(x))), `*`(Pi)))) (47)
 

`:=`(y(x, n = 3), `+`(`/`(`*`(4, `*`(sin(x))), `*`(Pi)), `*`(`/`(4, 3), `*`(`/`(`*`(sin(`+`(`*`(3, `*`(x))))), `*`(Pi)))))) (47)
 

`:=`(y(x, n = 4), `+`(`/`(`*`(4, `*`(sin(x))), `*`(Pi)), `*`(`/`(4, 3), `*`(`/`(`*`(sin(`+`(`*`(3, `*`(x))))), `*`(Pi)))))) (47)
 

`:=`(y(x, n = 5), `+`(`/`(`*`(4, `*`(sin(x))), `*`(Pi)), `*`(`/`(4, 3), `*`(`/`(`*`(sin(`+`(`*`(3, `*`(x))))), `*`(Pi)))), `*`(`/`(4, 5), `*`(`/`(`*`(sin(`+`(`*`(5, `*`(x))))), `*`(Pi)))))) (47)
 

`:=`(y(x, n = 6), `+`(`/`(`*`(4, `*`(sin(x))), `*`(Pi)), `*`(`/`(4, 3), `*`(`/`(`*`(sin(`+`(`*`(3, `*`(x))))), `*`(Pi)))), `*`(`/`(4, 5), `*`(`/`(`*`(sin(`+`(`*`(5, `*`(x))))), `*`(Pi)))))) (47)
 

> for i in [1,5,99] do         y(x,n=i):=subs(n=i,2*sum(((1-(-1)^n)/Pi/n)*sin(n*x),                     n=1..i)) od:
 

> plot({f(x)[H_odd],y(x,n=1),y(x,n=5),y(x,n=99)},                     x=-4.5*Pi..4.5*Pi,co=black);
 

Plot_2d  
 

Interval  ( 0, 2*Pi ): 

 

> y(x):=alpha[0]/2+          Sum(alpha[k]*cos(k*x)+beta[k]*sin(k*x),k=1..infinity);
 

`:=`(y(x), `+`(`*`(`/`(1, 2), `*`(alpha[0])), Sum(`+`(`*`(alpha[k], `*`(cos(`*`(k, `*`(x))))), `*`(beta[k], `*`(sin(`*`(k, `*`(x)))))), k = 1 .. infinity))) (48)
 

> alpha[k]:=(1/Pi)*Int(phi(x)*cos(k*x),x=0..2*Pi);                                # k = 0,1,2,3,...
 

`:=`(alpha[k], `+`(`*`(`/`(1, `*`(Pi)), `*`(Int(`*`(phi(x), `*`(cos(`*`(k, `*`(x))))), x = 0 .. `+`(`*`(2, `*`(Pi)))))))) (49)
 

> alpha[0]:=simplify(subs(k=0,%));
 

`:=`(alpha[0], `+`(`*`(`/`(1, `*`(Pi)), `*`(Int(phi(x), x = 0 .. `+`(`*`(2, `*`(Pi)))))))) (50)
 

> beta[k]:=(1/Pi)*Int(phi(x)*sin(k*x),x=0..2*Pi);                                 # k = 1,2,3,...
 

`:=`(beta[k], `+`(`*`(`/`(1, `*`(Pi)), `*`(Int(`*`(phi(x), `*`(sin(`*`(k, `*`(x))))), x = 0 .. `+`(`*`(2, `*`(Pi)))))))) (51)
 

> alias(H=Heaviside,th=thickness,co=color):
 

> phi(x,N):=H(x)+2*Sum((-1)^n*H(x-n*Pi),n=1..N);
 

`:=`(phi(x, N), `+`(H(x), `*`(2, `*`(Sum(`*`(`^`(-1, n), `*`(H(`+`(x, `-`(`*`(Pi, `*`(n))))))), n = 1 .. N))))) (52)
 

> phi(x,4):=subs(N=4,%);
 

`:=`(phi(x, 4), `+`(H(x), `*`(2, `*`(Sum(`*`(`^`(-1, n), `*`(H(`+`(x, `-`(`*`(Pi, `*`(n))))))), n = 1 .. 4))))) (53)
 

> plot(%,x=0..4.5*Pi,co=black);
 

Plot_2d  
 

> Alpha[0]:=value(subs({phi(x)=phi(x,4),k=0},                           alpha[k]));
 

`:=`(Alpha[0], 0) (54)
 

> Alpha[k]:=simplify(value(subs(phi(x)=phi(x,4),                       alpha[k])));
 

`:=`(Alpha[k], `+`(`-`(`/`(`*`(2, `*`(sin(`*`(Pi, `*`(k))), `*`(`+`(cos(`*`(Pi, `*`(k))), `-`(1))))), `*`(Pi, `*`(k)))))) (55)
 

> A[k]:=subs({sin(Pi*k)=0,cos(Pi*k)=(-1)^k},%);
 

`:=`(A[k], 0) (56)
 

> BETA[k]:=simplify(value(subs(phi(x)=phi(x,4),                         beta[k])));
 

`:=`(BETA[k], `+`(`/`(`*`(2, `*`(cos(`*`(Pi, `*`(k))), `*`(`+`(cos(`*`(Pi, `*`(k))), `-`(1))))), `*`(Pi, `*`(k))))) (57)
 

> BETA[k]:=subs(cos(Pi*k)=(-1)^k,%);
 

`:=`(BETA[k], `+`(`/`(`*`(2, `*`(`^`(-1, k), `*`(`+`(`^`(-1, k), `-`(1))))), `*`(Pi, `*`(k))))) (58)
 

> y(x,n):=Sum(BETA[k]*sin(k*x),k=1..n);
 

`:=`(y(x, n), Sum(`+`(`/`(`*`(2, `*`(`^`(-1, k), `*`(`+`(`^`(-1, k), `-`(1)), `*`(sin(`*`(k, `*`(x))))))), `*`(Pi, `*`(k)))), k = 1 .. n)) (59)
 

> y(x,4):=value(subs(n=4,%));
 

`:=`(y(x, 4), `+`(`/`(`*`(4, `*`(sin(x))), `*`(Pi)), `*`(`/`(4, 3), `*`(`/`(`*`(sin(`+`(`*`(3, `*`(x))))), `*`(Pi)))))) (60)
 

> for i in [1,3,99] do                                   y(x,n=i):=subs(n=i,y(x,n)) od:
 

> plot({y(x,n=1),y(x,n=3),y(x,n=99)},                      x=-4*Pi..8*Pi,co=black);
 

Plot_2d  
 

 

Continuous Functions with Cusps 

 

> h(x):=piecewise(x>=0 and x<=1,x,x>=1 and x<=2*Pi,1);
 

`:=`(h, proc (x) options operator, arrow; piecewise(`and`(`<=`(0, x), `<=`(x, 1)), x, `and`(`<=`(1, x), `<=`(x, `+`(`*`(2, `*`(Pi))))), 1) end proc) (61)
 

> plot(h(x),x=0..2*Pi,co=black);
 

Plot_2d  
 

> Alpha[k]:=simplify(value(subs(phi(x)=h(x),alpha[k])));
 

`:=`(Alpha[k], `/`(`*`(`+`(`-`(1), cos(k), `*`(2, `*`(k, `*`(sin(`*`(Pi, `*`(k))), `*`(cos(`*`(Pi, `*`(k))))))))), `*`(`^`(k, 2), `*`(Pi)))) (62)
 

> Alpha[k]:=subs(sin(k*Pi)=0,%);
 

`:=`(Alpha[k], `/`(`*`(`+`(`-`(1), cos(k))), `*`(`^`(k, 2), `*`(Pi)))) (63)
 

> Alpha[0]:=simplify(value(subs(phi(x)=h(x),alpha[0])));
 

`:=`(Alpha[0], `+`(`/`(`*`(`+`(`-`(1), `*`(4, `*`(Pi)))), `*`(2, `*`(Pi))))) (64)
 

> BETA[k]:=simplify(value(subs(phi(x)=h(x),beta[k])));
 

`:=`(BETA[k], `+`(`-`(`/`(`*`(`+`(`-`(sin(k)), `*`(2, `*`(k, `*`(`^`(cos(`*`(Pi, `*`(k))), 2)))), `-`(k))), `*`(`^`(k, 2), `*`(Pi)))))) (65)
 

> BETA[k]:=subs((cos(k*Pi))^2=1,%);
 

`:=`(BETA[k], `+`(`-`(`/`(`*`(`+`(`-`(sin(k)), k)), `*`(`^`(k, 2), `*`(Pi)))))) (66)
 

> y(x,n):=Alpha[0]/2+sum(Alpha[k]*cos(k*x)+               BETA[k]*sin(k*x),k=1..n);
 

`:=`(y(x, n), `+`(`/`(`*`(`+`(`-`(1), `*`(4, `*`(Pi)))), `*`(4, `*`(Pi))), sum(`+`(`/`(`*`(`+`(`-`(1), cos(k)), `*`(cos(`*`(k, `*`(x))))), `*`(`^`(k, 2), `*`(Pi))), `-`(`/`(`*`(`+`(`-`(sin(k)), k), `*... (67)
 

> y(x,1):=evalf(subs(n=1,%),4);
 

`:=`(y(x, 1), `+`(.9205, `-`(`*`(.1463, `*`(cos(x)))), `-`(`*`(0.5046e-1, `*`(sin(x)))))) (68)
 

> y(x,3):=evalf(subs(n=3,%%),4);
 

`:=`(y(x, 3), `+`(.9205, `-`(`*`(.1463, `*`(cos(x)))), `-`(`*`(0.5046e-1, `*`(sin(x)))), `-`(`*`(.1127, `*`(cos(`+`(`*`(2., `*`(x))))))), `-`(`*`(0.8680e-1, `*`(sin(`+`(`*`(2., `*`(x))))))), `-`(`*`(0...
`:=`(y(x, 3), `+`(.9205, `-`(`*`(.1463, `*`(cos(x)))), `-`(`*`(0.5046e-1, `*`(sin(x)))), `-`(`*`(.1127, `*`(cos(`+`(`*`(2., `*`(x))))))), `-`(`*`(0.8680e-1, `*`(sin(`+`(`*`(2., `*`(x))))))), `-`(`*`(0...
(69)
 

> y(x,99):=evalf(subs(n=99,%%%),4):
 

> for i in [1,3,99] do                                   y(x,n=i):=subs(n=i,y(x,n)) od:
 

> plot({y(x,n=1),y(x,n=3),y(x,n=99)},                       x=0..2*Pi,color=black);
 

Plot_2d  
 

 

L-two Norm 

 

> L_two[n]:=sqrt((1/2/Pi)*Int((H(x)-Y(x,n))^2,                         x=0..2*Pi));
 

`:=`(L_two[n], `+`(`*`(`/`(1, 2), `*`(`*`(`^`(2, `/`(1, 2)), `*`(`^`(`+`(`*`(`/`(1, `*`(Pi)), `*`(Int(`*`(`^`(`+`(H(x), `-`(Y(x, n))), 2)), x = 0 .. `+`(`*`(2, `*`(Pi))))))), `/`(1, 2)))))))) (70)
 

> for i in [1,3,99] do   L_two[n=i]:=evalf(sqrt((1/2/Pi)*value(int((h(x)-y(x,i))^2,        x=0..2*Pi))),4) od;
 

`:=`(L_two[n = 1], .1865) (71)
 

`:=`(L_two[n = 3], .1305) (71)
 

`:=`(L_two[n = 99], 0.2257e-1) (71)
 

 

For  n = 99  the FOURIER series  y(x, n = 99)  represents a good approximation  

to the above given function  h(x). 

 

> g(x):=piecewise(x<-1,-1,x>-1 and x<1,x,x>1,1);
 

`:=`(g, proc (x) options operator, arrow; piecewise(`<`(x, -1), -1, `and`(`<`(-1, x), `<`(x, 1)), x, `<`(1, x), 1) end proc) (72)
 

> plot(g(x),x=-Pi..Pi,co=black);
 

Plot_2d  
 

> A[k]:=simplify(value(subs(f(x)=g(x),a[k])));
 

`:=`(A[k], 0) (73)
 

> A[0]:=value(subs(f(x)=g(x),a[0]));
 

`:=`(A[0], 0) (74)
 

   
 

> B[k]:=simplify(value(subs(f(x)=g(x),b[k])));
 

`:=`(B[k], `+`(`-`(`/`(`*`(2, `*`(`+`(`*`(cos(`*`(Pi, `*`(k))), `*`(k)), `-`(sin(k))))), `*`(`^`(k, 2), `*`(Pi)))))) (75)
 

> B[k]:=subs(cos(Pi*k)=(-1)^k,%);
 

`:=`(B[k], `+`(`-`(`/`(`*`(2, `*`(`+`(`*`(`^`(-1, k), `*`(k)), `-`(sin(k))))), `*`(`^`(k, 2), `*`(Pi)))))) (76)
 

> y(x,n):=sum(B[k]*sin(k*x),k=1..n);
 

`:=`(y(x, n), sum(`+`(`-`(`/`(`*`(2, `*`(`+`(`*`(`^`(-1, k), `*`(k)), `-`(sin(k))), `*`(sin(`*`(k, `*`(x)))))), `*`(`^`(k, 2), `*`(Pi))))), k = 1 .. n)) (77)
 

> y(x,1):=evalf(value(subs(n=1,%)),4);
 

`:=`(y(x, 1), `+`(`*`(1.172, `*`(sin(x))))) (78)
 

> y(x,3):=evalf(value(subs(n=3,%%)),4);
 

`:=`(y(x, 3), `+`(`*`(1.172, `*`(sin(x))), `-`(`*`(.1736, `*`(sin(`+`(`*`(2., `*`(x))))))), `*`(.2222, `*`(sin(`+`(`*`(3., `*`(x)))))))) (79)
 

> for i in[1,3,99] do y(x,n=i):=subs(n=i,y(x,n)) od:
 

> plot({y(x,n=1),y(x,n=3),y(x,n=99)},                      x=-2*Pi..2*Pi,co=black);
 

Plot_2d  
 

> L_two[n]:=sqrt((1/Pi)*Int((G(x)-Y(x,n))^2,x=0..Pi));
 

`:=`(L_two[n], `*`(`^`(`+`(`*`(`/`(1, `*`(Pi)), `*`(Int(`*`(`^`(`+`(G(x), `-`(Y(x, n))), 2)), x = 0 .. Pi)))), `/`(1, 2)))) (80)
 

> for i in [1,3,99] do           L_two[n=i]:=evalf(sqrt((1/Pi)*int((g(x)-y(x,i))^2,                   x=0..Pi)),4) od;
 

`:=`(L_two[n = 1], .3172) (81)
 

`:=`(L_two[n = 3], .2468) (81)
 

`:=`(L_two[n = 99], 0.2264e-1) (81)
 

>  
 

For  n = 99  the FOURIER series  y(x, n = 99)  represents a good approximation  

to  the above given function  g(x). 

 

Legal Notice: The copyright for this application is owned by the author. Neither Maplesoft nor the author are responsible for any errors contained within and are not liable for any damages resulting from the use of this material. This application is intended for non-commercial, non-profit use only. Contact the author for permission if you wish to use this application in for-profit activities.