Series de Fourier - Karen Contreras y Daniela Cruz

Las series de Fourier son una herramienta matemática que se utiliza para representar funciones periódicas como una suma infinita de funciones trigonométricas (senos y cosenos) o exponenciales complejas. Estas series se utilizan para descomponer una función periódica en componentes más simples y, a menudo, se aplican en áreas como análisis de señales, procesamiento de imágenes, teoría de control, entre otros campos de la ciencia y la ingeniería.

La idea central es que muchas funciones periódicas pueden aproximarse de manera efectiva utilizando una suma infinita de armónicos (senos y cosenos) con frecuencias específicas y amplitudes adecuadas. Esta suma infinita se expresa típicamente mediante la fórmula general de la serie de Fourier:

f(x)=2a0+n=1(ancos(nx)+bnsin(nx))

Propiedades 

Linealidad: Las series de Fourier son lineales, lo que significa que la combinación lineal de funciones puede ser representada como la combinación lineal de sus series de Fourier correspondientes.

Convergencia Puntual: En muchos casos, las series de Fourier convergen puntualmente a la función original en los puntos donde la función es continua.

Convergencia en Media Cuadrática: Las series de Fourier convergen en media cuadrática (o en norma L2) a la función original en un intervalo si la función satisface ciertas condiciones, incluso si la función tiene discontinuidades finitas.

Teorema de Parseval: Este teorema establece que la energía de la señal periódica (la función) es igual a la suma de las energías de sus componentes de frecuencia individuales. Es decir, la energía total de una función periódica es igual a la suma de las magnitudes cuadradas de sus coeficientes de la serie de Fourier.

Convergencia Uniforme: En ciertos casos, las series de Fourier convergen uniformemente a la función original, lo que significa que la aproximación es válida en todo el intervalo y no solo en puntos específicos.

Propiedades de Simetría: Las funciones pares se expresan únicamente con cosenos en su serie de Fourier, mientras que las funciones impares se expresan solo con senos. Esto simplifica el cálculo de los coeficientes.

Derivadas e Integrales de Funciones: Las series de Fourier también pueden aplicarse a derivadas e integrales de funciones periódicas, lo que facilita el análisis de sistemas dinámicos y problemas de valores iniciales.

Ejemplos

Desarrollo en serie de Fourier con MATLAB y a aproximar una función periódica mediante la suma de funciones armónicas

Una función es periódica de periodo P si hay un número P>0 tal que f(t+P)=f(t). Cualquier múltiplo n entero de P es también periodo f(t+nP)=f(t)

La función f(t)=cos(2πt)+cos(4πt)/2, es la suma de dos funciones periódicas de periodos 1 y 0.5, respectivamente. Como vemos en la gráfica f(t) es periódica con periodo P=1.

Las funciones cos(t) y cos(2) son periódicas de periodo 2π y 2/2 respectivamente, pero la suma

t=0:0.05:10;
x=cos(2*pi*t)+cos(4*pi*t)/2;
subplot(2,1,1)
plot(t,x);
xlabel('t')
ylabel('x')
subplot(2,1,2)
x=cos(2*pi*t)+cos(2*pi*sqrt(2)*t);
plot(t,x);
xlabel('t')
ylabel('x')

Superposición de funciones armónicas

Sea una función periódica resultado de la superposición de tres funciones armónicas con distintas frecuencias, amplitudes y fases iniciales

x=200sin(2π·100+π/2)+100sin(2π·200+π)+100sin(2π·400+3π/2)

f=[100,200,400]; %frecuencias
A=[200,100,100]; %amplitudes
phi=[90,180,270]; %fases

subplot(2,2,1)
stem(f,A)
axis([0,500,0,210])
xlabel('Frecuencia')
ylabel('Amplitud')

subplot(2,2,2)
stem(f,phi)
axis([0,500,0,360])
xlabel('Frecuencia')
set(gca,'YTick',0:90:360)
set(gca,'YTickLabel',{'0','\pi/2','\pi','3\pi/2','2\pi'})
ylabel('Fase')

subplot(2,2,3:4) %resultante
t=(0:0.1:30)/1000; %milisegundos
x=zeros(1,length(t));
for i=1:length(f)
    x=x+A(i)*sin(2*pi*f(i)*t+phi(i)*pi/180);
end
plot(t,x,'r')
xlabel('t(ms)')
ylabel('x')
title('Resultante')
ylim([-410,410])
set(gca,'XTick',(0:5:30)/1000)
set(gca,'XTickLabel',{'0','5','10','15','20','25','30'})
grid on



Serie de Fourier

Una función f(t) periódica de periodo P, se puede representar en forma de una suma infinita de funciones armónicas es decir

()=02+=1(cos(2)+sin(2))

donde a0 a1 ...ak ... y b1 b2 .... bk .... son los denominados coeficientes de Fourier.

Teniendo en cuenta los resultados de las integrales

syms m n t;
>> y=int('sin(m*t)*cos(n*t)',t,-pi,pi)
y =0

/2/2cos(2)cos(2)=2cos()cos()={02=

>> syms m n t;
>> y=int('cos(m*t)*cos(n*t)',t,-pi,pi);
>> assume(m,'integer')
>> assume(n,'integer')
>> assume(m==n)
>> simplify(y)
ans =pi

/2/2sin(2)sin(2)=2sin()sin()={02=

Los coeficientes del desarrollo en serie valen

La suma parcial de las series de Fourier es

()=02+=1(cos(2)+sin(2))

Si la función f(t) tiene simetría, algunos de los coeficientes resultan nulos.

  • Si f(t) es una función par, f(t)=f(-t), los términos bk son nulos
  • Si f(t) es impar f(t)=-f(-t), los coeficientes ak son nulos

Función par

Por ejemplo, para el pulso rectangular simétrico de anchura 1 y periodo P=2 se obtienen los siguientes coeficientes.

0=220.50.5=1=220.50.5cos()=2(sin(2)){0par2(1)(1)/2impar

>> syms t P k;
>> ak=int(cos(pi*k*t),t,-0.5,0.5);
>> subs(ak,k,sym('[1 2 3 4 5 6 7]'))
ans =[ 2/pi, 0, -2/(3*pi), 0, 2/(5*pi), 0, -2/(7*pi)]

Vamos a reconstruir la función f(t) a partir del desarrollo en serie de Fourier.

()=12+2cos()2cos(3)3+2cos(5)52cos(7)7+...

n=7; %número de términos
hold on
x=[-1 -0.5 -0.5 0.5 0.5 1];
y=[0 0 1 1 0 0];
plot(x,y,'b','linewidth',2)
x=linspace(-1,1,100);
y=zeros(length(x),1);
for i=1:length(x)
    y(i)=1/2;
    for k=1:2:n
        y(i)=y(i)+(-1)^((k-1)/2)*2*cos(k*pi*x(i))/(k*pi);
     end
end
plot(x,y, 'r');
title(sprintf('Aproximación de Fourier: %i términos',n))
xlabel('t'); 
ylabel('f(t)')
grid on
hold off

Función impar

Sea ahora la función de periodo P=2



Es una función impar, los coeficientes ak son nulos

=10sin()01sin()=1(2+2cos())={0par4impar

>> syms t P k;
>> bk=int(sin(pi*k*t),t,-1,0)-int(sin(pi*k*t),t,0,1);
>> subs(bk,k,sym('[1 2 3 4 5 6 7]'))
ans =[ -4/pi, 0, -4/(3*pi), 0, -4/(5*pi), 0, -4/(7*pi)]

El desarrollo en serie es

()=4sin()4sin(3)34sin(5)54sin(7)7+...

n=7; %Número de términos;
hold on
x=[-1 -1 0 0 1 1];
y=[0 1 1 -1 -1 0];
plot(x,y,'b','linewidth',2)
x=linspace(-1,1,100);
y=zeros(length(x),1);
for i=1:length(x)
    y(i)=0;
    for k=1:2:n
        y(i)=y(i)-4*sin(k*pi*x(i))/(k*pi);
     end
end
plot(x,y, 'r');
title(sprintf('Aproximación de Fourier: %i términos',n))
xlabel('t'); 
ylabel('f(t)')
grid on
hold off

Referencias

Franco, A.(2016). Series de Fourier. Recuperado de:http://www.sc.ehu.es/sbweb/fisica3/oscilaciones/fourier/fourier.html

Managua. (2013). Lecciones sobre series de Fourier. Recuperado de: https://www.ugr.es/~acanada/docencia/matematicas/analisisdefourier/Duoandikoetxeafourier.pdf


Comentarios