You are on page 1of 3

Programa en Matlab para Series de Fourier

Este es un programa en Matlab que permite hacer una aproximación a una señal
cuadrada (con límites en “y” max= 1, min= -1) por medio de las series de Fourier.
Los valores de los coeficientes son:A0 = 0, debido al valor medio de la función.B(n)
= 4/n*pi, obtenido analíticamente.A(n) = 0, debido a la forma de la señal.
Programa en Matlab
% Pablo Alejandro Arreola Galván 98482
% Febrero, 2013
% Este programa grafica una función escalón y sobre ella
% una aproximación hecha con la serie de Fourier
%Introducción al programa y limpia de pantalla
clc
clear all
disp('******************************')
disp('Serie de Fourier')
% Aquí declaramos varias cosas, en primer lugar una variable N la cual es el número de
armónicos que % incluirá nuestra aproximación, mientras mayor sea el número, más fiel será la
gráfica obtenida a la
% original.
% También se declara el intervalo (x) de nuestra función, que va de –pi hasta pi.
% Por último inicializamos la variable SUM a cero.
N= input('Número de muestras deseadas (N):');
x=-pi:0.001:pi;
sum=0;
% En este ciclo for está contenida la magia, inicializa en 1 y termina en N, el incremento es de 2,
para % así tener una serie de números impares (1,3,5,7,9…). Los valores pares de (n) se omiten
ya que el
% resultado es cero para todos ellos, no sumarán nada a la variable (sum).
% b(n) fue obtenida analíticamente
for n = 1: 2: N
b(n) = 4/(n*pi);
sum = sum + b(n) * sin(n*x);
end
% Para tener el resultado aproximado de la señal, se suma a0/2, este término fue obtenido a partir
de % el valor promedio del área bajo la curva de -pi a pi, como es una función simétrica, el valor
es 0,
% esto podría omitirse, pero para se incluye para ver más claramente la fórmula de la
serie.
sum = sum + 0;
% Esta es una manera de generar la función escalón (f), diciendo que toda (x) inferior a 0 valdrá1, y % toda (x) mayor a 0 valdrá 1. Esto sólo es válido para el intervalo de –pi a pi, donde se ve
una señal % cuadrada, si se amplían los límites se verá la gráfica de valores constantes.
f=(x<0).*(-1)+(x>=0).*1;
% En esta sección se encuentran los comandos para graficar y fin del programa.
plot(x,f); hold on
plot(x,sum)
grid
title(‘Serie de Fourier')
xlabel('Tiempo')

Onda cuadrada. 18:55 Disculpa. Matlab. Series de Fourier 4 comentarios: 1. Jorge Ávila Morales18 de octubre de 2013. entonces para obtener los valores de los coeficientes. siempre debemos calcularlo de forma analítica para luego programarlo en Matlab? existe alguna forma de solo poner la funcion deseado para que este la aproxime? gracias Responder Respuestas .ylabel('Voltaje') disp('Programa ejecutado exitosamente') disp('******************************') Algunos resultados son: Aproximación con N=3 Aproximación con N=30 Publicado por Pablo Arreola en 11:25 Enviar por correo electrónicoEscribe un blogCompartir con TwitterCompartir con FacebookCompartir en Pinterest Etiquetas: Fourier. Programa.

por lo que es de 2pi. Pablo Arreola25 de noviembre de 2013. al sustituir en el argumento del seno. Supongo que podrías hacer un programa que te calcule los coeficientes resolviendo las integrales. Pablo Arreola20 de octubre de 2013. Responder Respuestas 1. cristopher valencia25 de noviembre de 2013. 20:44 Este comentario ha sido eliminado por el autor. tuve que verlo un rato para acordarme. Responder 2. queda solamente (xn) saludos! .1. Vez que originalmente la fórmula tiene el coeficiente bn que multiplica al seno de (2pi *xn/P). este programa sólo hace las gráficas. pero este programa no hace nada de eso. entonces mi periodo P va de -pi a pi. 21:05 Jaja. 18:33 En este caso si tendrás que hacer primero el cálculo de los coeficientes.