Séries de Fourier - Exemplo da aula de 31.07.02
Consideremos a função
- periódica que vale
no intervalo
![]()
> h:=proc(x)
local q;
q:=x;
while q>2*Pi do
q:=q-2*Pi;
od;
q^2;
end:> f:=proc(x)
local q;
q:=x;
while q<0 do
q:=q+2*Pi
od;
h(q)
end:> plot(f,-12..12,tickmarks=[8,3]);
![]()
A função
não é uma função par nem ímpar. Isto significa que em sua série de Fourier vão aparecer tanto os senos quanto os cossenos. Para calcular seus coeficientes de Fourier, em vez de integrar, por exemplo,
![]()
é preferível integrar
![]()
pois no intervalo
a função
tem duas definições diferentes, ao passo que
em todo o intervalo
.
> a[0]:=1/Pi*int(x^2,x=0..2*Pi);
![]()
> a[n]:=1/Pi*int(x^2*cos(n*x),x=0..2*Pi);
![]()
![]()
![]()
Aqui vamos pedir ao maple que substitua as expressões
e
por seus valores
e
.
> a[n]:=subs(sin(Pi*n)=0,cos(Pi*n)^2=1,1/Pi*int(x^2*cos(n*x),x=0..2*Pi));
![]()
> b[n]:=subs(sin(Pi*n)=0,cos(Pi*n)^2=1,1/Pi*int(x^2*sin(n*x),x=0..2*Pi));
![]()
De modo que a serie de Fourier de
![]()
> a[0]/2+sum((a[n]*cos(n*x)+b[n]*sin(n*x)),n=1..infinity);
![]()
Vamos fazer o gráfico de algumas somas parciais. Para isto definimos a função
> S:=(x,m)->a[0]/2+sum((a[n]*cos(n*x)+b[n]*sin(n*x)),n=1..m);
![]()
Por exemplo,
> S(x,5);
![]()
![]()
> plot(S(x,5),x=-10..10,numpoints=400,tickmarks=[8,3]);
![]()
> plot(S(x,10),x=-10..10,numpoints=400,tickmarks=[8,3]);
![]()
> plot(S(x,50),x=-10..10,numpoints=400,tickmarks=[8,3]);
![]()
Para mostrar a soma dos primeiros 100 termos da série de Fourier junto com a função, damos nomes aos gráficos:
> with(plots):
u:=plot(f,-1..8,tickmarks=[8,3],color=blue):
v:=plot(S(x,100),x=-1..8,numpoints=400,tickmarks=[4,0]):
display({u,v});
![]()
>