Series de Fourier (Grupo MECA)
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Series de Fourier (Grupo MECA) |
| Asignatura | EDP |
| Curso | 2024-25 |
| Autores | Ángel De Lucas Miranda |
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
1 Introducción
Las series de Fourier son fundamentales en ingeniería y procesamiento de señales, ya que permiten descomponer cualquier señal periódica en una suma de senos y cosenos. Esto facilita el análisis y la manipulación de señales en numerosos campos. En telecomunicaciones y electrónica, se usan para modelar y procesar señales de audio, radio y vídeo, mejorando la transmisión y eliminación de ruido. En procesamiento de imágenes y sonido, permiten la compresión de datos (como en JPEG y MP3) y la detección de patrones. En ingeniería eléctrica y control, se aplican al estudio de circuitos y sistemas dinámicos.
Incluso cuando las señales presentan discontinuidades, como en pulsos digitales y ondas cuadradas, las series de Fourier siguen siendo una herramienta poderosa para analizar su comportamiento y optimizar su uso en la tecnología moderna.
2 Aproximación por series de Fourier
Empezaremos este trabajo aproximando la función característica [math] f(x) = 1_{x \leq 1/4}(x) [/math] en el intervalo [math] [0,1] [/math]. Observamos que la función con la que estamos trabajando se trata de una función discontinua que no presenta ningún tipo de periodicidad, por ello, extendemos la función al intervalo [math] [-1,1] [/math].
Es fácil comprobar que la función extendida pertenece al grupo de funciones [math] L^2 [/math], además la función verifica la condición de Dirichlet, por tanto, la serie de Fourier de la función converge puntalmente al propio punto en los puntos de continuidad y al promedio en los puntos de discontinuidad. A continuación se muestra el desarrollo de Fourier de la función extendida [math] f(x) = 1_{x \leq 1/4}(x) [/math] para diferentes valores de [math] n [/math].
def f(x):
# Definimos la función a trozos extendida
return np.where((x >= -0.25) & (x <= 0.25), 1, 0)
def coef_fourier(f,a,b,n):
T = b-a # Periodo
x = np.linspace(a,b,400)
val_f = f(x)
a_coef = [] # Lista de coeficientes
for j in range(n+1):
aux = 0
val_cos = np.cos(2*np.pi*j*x/T)
aux = np.trapz(val_f*val_cos,x)
aux = aux*(2/T) # La otra parte de la integral
a_coef.append(aux)
return a_coef
def aprox_fourier_par(a_coef,T,x,n):
aux = 0
aux += a_coef[0]/2
for i in range(1,n+1):
aux += a_coef[i]*np.cos(2*np.pi*i*x/T)
return aux
En la figura anterior se puede observar lo que se conoce como el fenómeno de Gibbs. Este fenómeno establece que en el punto de discontinuidad la serie de Fourier que aproxima la función presenta una oscilación que sobrepasa superior o inferiormente a la función original. Este fenómeno se da cuando tratamos de aproximar por Fourier funciones discontinuas. Además, también se sabe que el error de aproximación tiende al [math] 9\% [/math] del salto dado. A continuación se muestra una gráfica del error cometido por nuestra aproximación de Fourier usando dos normas diferentes, la norma del espacio [math] L^2 [/math] y la norma del supremo.
z = 300 # Número de aproximaciones que queremos hacer
error_L2 = []
error_sup = []
a_coef = coef_fourier(f,a,b,z) # Obtenemos los z primeros coeficientes de la serie de fourier (hay z+1 en total)
intervalo = np.linspace(0,1,200) #El intervalo donde queremos integrar, [0,1]
y_real = f(np.array(intervalo))
for k in range(1,z+1):
y_aprox = []
for j in intervalo:
y_aprox.append(aprox_fourier_par(a_coef[:k+1],T,j,k))
error_L2.append(np.sqrt( np.trapz( abs(y_real-y_aprox)**2,x) ))
error_sup.append(max(abs(y_real-y_aprox)))
valor_n = [i for i in range(1,z+1)]
plt.plot(valor_n,error_sup, color = "#d62728", label="Error norma supremo")
plt.plot(valor_n,error_L2, color = "#000080", label="Error norma $L^2$")
plt.xlabel('número de términos')
plt.ylabel('error')
plt.legend(loc="upper right")
plt.title("Error aproximación")
plt.savefig("Error_aprox")
Tal como se puede observar en la imagen el error tiende asintóticamente a [math] 0.09 [/math] (aproximadamente). Una forma de mitigar este fenómeno es con las sumas de Cesàro.
3 Sumas de Cesàro y el fenómeno de Gibbs
Las sumas de Cesàro ayudan a mitigar el fenómeno de Gibbs al suavizar la convergencia de las series de Fourier. En lugar de tomar directamente la serie de Fourier parcial de orden N, las sumas de Cesàro promedian las sumas parciales anteriores, reduciendo así las oscilaciones cerca de las discontinuidades. Expresado matemáticamente:
[math]\sigma_N(f) = \frac{1}{N+1} \sum_{n=0}^{N} S_n(f)[/math]
donde [math]S_n(f)[/math] es la suma parcial de Fourier de orden n.
Este método mejora la estabilidad de la aproximación y reduce la magnitud de las sobreoscilaciones del fenómeno de Gibbs, aunque no las elimina por completo. Comprobemos esto numéricamente con el ejemplo anterior.