Sie sind auf Seite 1von 11

Programa para generar las gráficas de la serie de Fourier así como su

espectro y componentes

%% Series de Fourier
clc
clear
close all

syms n t

Ao=0;
An=(4*(sin(pi*n/2))^2)/((pi)^2*n^2);
Bn=0;
T=2;

wo=2*pi/T;

Arm=20;

for n=1:Arm
f(n,:)=sum((An)*cos(n*wo*t)+((Bn)*sin(n*wo*t)));
end
t=linspace(0,5*T,1000);
f=subs(f,'t',t);
f(n+1,:)=zeros(1,1000);
plot(t,Ao+sum(f),'Linewidth',2); grid on
xlabel('\bf TIEMPO'); ylabel('\bf AMPLITUD');
title('\bf SERIES DE FOURIER');

%% SERIES DE FOURIER ANIMADA


clc
clear
close all
syms n t

Ao=0;
An=(4*(sin(pi*n/2))^2)/((pi)^2*n^2) ;
Bn=0;
T=2;

wo=2*pi/T;

Arm=10;

for n=1:Arm
syms t
f(n,:)=sum((An)*cos(n*wo*t)+(Bn)*sin(n*wo*t));
t=linspace(0,5*T,1000);

subplot(3,1,1);
plot(t, subs(f(n,:),'t',t)); grid on
xlabel('\bf TIEMPO'); ylabel('\bf AMPLITUD');
title('\bf COMPONENTE'); hold on

subplot(3,1,2);
plot(t, Ao+subs(sum(f),'t',t), 'r', 'Linewidth',1.5); grid on
xlabel('\bf TIEMPO'); ylabel('\bf AMPLITUD');
title('\bf SERIE DE FOURIER')
subplot(3,1,3);
Cn(n)=sqrt((An)^2+(Bn)^2);
stem(Cn,'fill'); grid on
xlim([1,Arm]);
xlabel('\bf ARMÓNICO'); ylabel('\bf AMPLITUD');
title('\bf ESPECTRO DE FRECUENCIA'); pause(0.5)
end
SERIE TRIGONOMETRICA DE FOURIER

Con ayuda de la serie trigonométrica de Fourier podremos representar una señal g(t) en
cualquier intervalo de duración de la misma en el tiempo, para ellos debemos encontrar sus
coeficientes como a0, an, bn. {an}+∞ n=0 y {bn}+∞ n=1, Cada término de la serie tiene
periodo 2pi. Cuyos valores toman en:

 a0 = 0.5043
 an=datos en tabla 1.1
 b0= datos mostrados en tabla 1.2

Tabla 1.1 Para los valores de an

COMPONENTE AN VALORES QUE TOMA AN


A1 0
A2 0.0155162930397320
A3 0.00695557963850055
A4 0.00392435427074934
A5 0.00251510984434559
A6 0.00174793595768211
A6 0.00128478859564660
A7 0.000983960046422030
A8 0.000777609134604919
A9 0.000629955682437589
A10 0.000520680974487651
A11 0.000437552732139948
A12 0.000372849925169161
A13 0.000321504318642837
A14 0.000280077491691913

Tabla 1.2 Dados los valores de bn

COMPONENTE BN VALORES DE BN
B1 0
B2 0.124130344317856
B3 0.0834669556620066
B4 0.0627896683319894
B5 0.0503021968869117
B6 0.0419504629843708
B6 0.0359740806781048
B7 0.0314867214855049
B8 0.0279939288457771
B9 0.0251982272975036
B10 0.0229099628774566
B11 0.0210025311427175
B12 0.0193881961087964
B13 0.0180042418439989
B14 0.0168046495015148
Observamos que tenemos valores positivos, pues el espectro de amplitud para ambos casos an
y bn es una funcion par de w.

la Transformada de Fourier visualiza los coeficientes de las funciones sinusoidales que forman
la señal original, A partir de la señal en el dominio de la frecuencia se puede recuperar la señal
en el dominio en el tiempo

Tomando en cuenta que para obtener estos valores: se coloco en matlab el siguiente codigo:

FIg. 1

El codigo de la figura anterior mostrara Una señal genérica que se forma por un sumatorio de
señales sinusoidales, como se muestra en la figura 2.

Figura 2.

Cabe mencionar que hubo complicaciones en la grafica de la serie trigonometrica, pues los
pulsos que se indicaron no resultan como se deseaban.
SERIE TRIGONOMETRICA COMPACTA

 A0= a0 = 0.5043

TABLA 2.1 VALORES DE AN

Valores de An APROXIMACIONES ESPECTRALES


A1 0.237308011195901
A2 0.0155162930397320
A3 0.00695557963850055
A4 0.00392435427074934
A5 0.00251510984434559
A6 0.00174793595768211
A6 0.00128478859564660
A7 0.000983960046422030
A8 0.000777609134604919
A9 0.000629955682437589
A10 0.000520680974487651
A11 0.000437552732139948
A12 0.000372849925169161
A13 0.000321504318642837
A14 0.000280077491691913

TABLA 2.2 VALORES DE BN

VALORES DE BN APROXIMACIONES ESPECTRALES


B1 0.237308011195901
B2 0.124130344317856
B3 0.0834669556620066
B4 0.0627896683319894
B5 0.0503021968869117
B6 0.0419504629843708
B6 0.0359740806781048
B7 0.0314867214855049
B8 0.0279939288457771
B9 0.0251982272975036
B10 0.0229099628774566
B11 0.0210025311427175
B12 0.0193881961087964
B13 0.0180042418439989
B14 0.0168046495015148

Los valores representados en la tabla 2.1 y 2.2 son una secuencia infinita de impulsos
equidistantes, cada uno de los cuales tiene una amplitud que corresponde con el valor de g(t)
en el tiempo correspondiente al impulso. Para poderdeterminar la grafica resultante y por
medio de la suma de Fourier: encontramos el valor de Cn:

TABLA 2.3 VALORES PARA CN


VALORES DE CN APROXIMACIONES DEL VALOR CN
C1 0.244611498991490
C2 0.125096353784450
C3 0.0837562700673263
C4 0.0629121848745025
C5 0.0503650353834757
C6 0.0419868625252616
C6 0.0359970160203633
C7 0.0315020921095522
C8 0.0280047268900922
C9 0.0252061005135362
C10 0.0229158789428561
C11 0.0210070884892272
C12 0.0193917808728297
C13 0.0180071121894685
C14 0.0168069833185529

Para obtener todos estos valores hicimos uso del siguiente codigo de la figira 2.1:

Figura 2.1

muestrear una señal es equivalente matemáticamente a multiplicar por un tren de deltas.Nos


queda que la transformada de una señal muestreada es un tren de funciones que con ayuda a
la serie de fourier compacta encontramos la figura resultante de la Figura 2. Inciso C).

SERIE EXPONENCIAL DE FOURIER

Ahora determinaremos los coeficientes de Dn, Do. Al igual que estaremos analizando sus
espectros en cuestion de la frecuencias, estos dos planos se complementa entres si para una
mejor compresion de una señal. A continuacion mostraremos los valores obtenidos de
aquellos coeficientes a evaluar:

Vemos que para Cn le corresponde una parte real y una parte compleja:

VALORES DE DN PARTE REAL PARTE IMAGINARIA


D1 3.50169796396979e-05 - 0.00420203755676375i
D2 3.74733985131374e-05 - 0.00434691422752394i
D3 4.01976503620000e-05 -0.00450213684054400i
D4 4.32301349156700e-05 -0.00466885457089236i
D5 4.66191664778857e-05 -0.00484839331370012i
D6 5.04229100881202e-05 -0.00504229100881202i
D7 5.47118936520875e-05 -0.00525234179060040i
D8 5.95723005069451e-05 - 0.00548065164663895i
D9 6.51103323164997e-05 - 0.00572970924385197i
D10 7.14580592023934e-05 - 0.00600247697300105i
D11 7.87813660039510e-05 - 0.00630250928031608i
D12 8.72908990464411e-05 - 0.00663410832752952i
D13 9.72573816376644e-05 - 0.00700253147791184i
D14 0.000109033410549468 - 0.00741427191736383i
D15 0.000123085068047667 - 0.00787744435505066i
D16 0.000140038745845957 - 0.00840232475075740i
D17 0.000160752159321419 - 0.00900212092199944i
D18 0.000186424962584580 - 0.00969409805439818i
D19 0.000218776366069974 - 0.0105012655713588i
D20 0.000260340487243826 - 0.0114549814387283i
D21 0.000314977841218795 - 0.0125991136487518i
D22 0.000388804567302460 - 0.0139969644228885i
D23 0.000491980023211015 - 0.0157433607427525i
D24 0.000642394297823300 - 0.0179870403390524i
D25 0.000873967978841057 - 0.0209752314921854i
. .
. .
D30 0.504279523791290 + 0.00000000000000i
. .
. .
3.74733985131374e-05 + 0.00434691422752394i
D61 3.50169796396979e-05 + 0.00420203755676375i

Como observamos en el la tabla 3.1 los valores tienen un cambio en D30. Que hace referencia
a la figura 3 inciso b). Tambien se grafico con respocvto a los valores de magnitud de Cn y fase
por igual de Cn.

Al calcular el espectro de una señal, los resultados obtenidos a través de la Transformada de


Fourier son valores complejos como ya lo vimos en la tabla 3.1 Aquí teniamos que plantearnos
una variables para reprenatr que partes vamos a representar en el espectro. Por ello, calcular
exclusivamente el módulo, para que los resultados sean independientes de la posición
respecto a la señal a analizar. Sin embargo en nuestro codigo de Matlab definimos a nuestra
serie de Fourier compleja como la figura 3.2:

Figura 3.2
Para las aproximaciones que se hicieron y al haber encontrado los valores se pretende ahora
hacer las apriximaciones de cada muestreo para ello lo representamos en la figiura 3 inciso c).

Cabe mencionar que comenzaremos por definir nuestras variables, pues en las tres series se
implemntara la misma funcion g(t).

CONCLUSIONES:

En cada una de las representaciones de Fourier hemos descrito de forma general y practica, se
realizo la representacion del espectro y distribucion de la frecuencia a base de una funcion
continua par. El analisis de una serie de tiempo tiene como finalidad la cuantificacion de la
señal descrbiendo las componentes principales que la contituyen que se pueden tambien
representar por una sumatoria de funciones periodicas con caracteristicas que ya sabemos
(componentes de las series de Fourier). Así mismo el Análisis Espectral Singular brinda la
posibilidad de reconstruir la señal original a partir de un conjunto de bases definidos a partir
del mismo conjunto de datos. Ahora en terminos practicos no abre un sinfín en el analisis de
señales.

CODIGOS:

SERIE TRIGONOMETRICA
clc; clear all;
syms t;
g=@(t) exp(-t/2);
limiteinf = 0;
limitesup = pi;
T0=limitesup-limiteinf;
w0=2*pi/T0;
a0fun= (1/T0)*int(g,t,limiteinf,limitesup); %declaramos la funcion a0
a0=double(a0fun)
n=1;
for n=1:15
x=n;
anfun=@(t)exp(-t/2)*cos(n*w0*t); %representacion en forma de euler
an1=(2/T0)*int(anfun,t,limiteinf,limitesup); %declamos funcion an
an(n)=double(an1);
bnfun=@(t)exp(-t/2)*sin(n*w0*t); %representacion en forma de euler
bn1=(2/T0)*int(bnfun,t,limiteinf,limitesup); %declamos funcion bn
bn(n)=double(bn1);
end;

magan=abs(an(n)); %magnitud de an
magbn=abs(bn(n)); %magnitud de bn

N1=[5,10,15]; %valores de coeficientes


t1=-3:pi/100:2*pi;
for j=1:3
gAprox=a0;
a=1;
for n=1:N1(j)
gAprox=gAprox+an(n)*cos(n*w0*t1)+ bn(n)*sin(n*w0*t1);
%gAprox: indica la serie trigonometrica de fourier, en
terminos
%de senos y cosenos de la misma frecuencia
a=a+1;
end
gAprox1(j,:)=gAprox;
end

subplot(3,1,1)
stem(magan)

subplot(3,1,2)
stem(magbn)

subplot(3,1,3)
plot(t1,gAprox1(1,:),'r',t1,gAprox1(2,:),'b',t1,gAprox1(3,:),'g')
legend('1ra','2da','3ra');
SERIE TRIGONOMETRICA COMPACTA
clc; clear all;
syms t; %variable o simbolo
g=@(t) exp(-t/2);
limiteinf = 0;
limitesup = pi;
T0=limitesup-limiteinf;
w0=2*pi/T0;
a0fun= (1/T0)*int(g,t,limiteinf,limitesup); %declaramos la funcion a0
a0=double(a0fun)%double conviuerte simbolo a numero
n=1;
for n=1:15
x=n;
anfun=@(t)exp(-t/2)*cos(n*w0*t);
an1=(2/T0)*int(anfun,t,limiteinf,limitesup); %declamos funcion an
an(n)=double(an1);
bnfun=@(t)exp(-t/2)*sin(n*w0*t);
bn1=(2/T0)*int(bnfun,t,limiteinf,limitesup); %declamos funcion bn
bn(n)=double(bn1);
cn(n)=sqrt(an(n)^2 + bn(n)^2); %declamos funcion cn
thetan(n)=atan(-bn(n)/an(n)); %declamos el valor del angulo theta(n)
thetanGrad(n)=(thetan(n)*180)/pi; %para que el numero de en radianes
end;

magcn=abs(cn); %se ponen para graficar a la magnitud


angtheta=angle(thetanGrad); %angulo de theta n

N1=[5,10,15]; %valores que tomara los coeficientes


t1=-3:pi/100:2*pi;

for j=1:3
gAprox=a0;
a=1;
for n=1:N1(j)
gAprox=gAprox+cn(n)*cos(n*w0*t1+thetan(n));
a=a+1;
end
gAprox1(j,:)=gAprox; %+cn*cos(n*w0*t1+thetan(n));

end
%plot(t1,gAprox)
figure(1)
subplot(3,1,1)
stem(magcn)

subplot(3,1,2)
stem(angtheta)

subplot(3,1,3)
plot(t1,gAprox1(1,:),'r',t1,gAprox1(2,:),'b',t1,gAprox1(3,:),'g')
legend('1ra','2da','3ra',4);
SERIE EXPONENCIAL
clc;clear all;
syms t; %declarar la variable o simbolo
T0=pi;
limInf=0;
limSup=pi;
W0=(2*pi)/T0;
N=30; %numero de coeficientes
a=1; % por que no genera numeros negativos, ni el cero
for n=-N:N
x(a)=n; %para que muestre los numeros antes de cero en la grafica
Dnfun=@(t)exp(-t/2)*exp(-i*n*W0*t);
Dnint=int(Dnfun,t,limInf,limSup); %declaramos los limites de la
integral
Dn(a)=(1/T0)*double(Dnint); %definicion de Dn
a=a+1;
end
magDn=abs(Dn); %magnitud de los numeros complejos
angDn=angle(Dn); %angulo de Dn
% stem(x,magDn);%muestra los impulsos

N1=[10,20,30]; %valores que tomara los coeficientes


t1=-pi:T0/1000:pi;
for j=1:3
gAprox=0;
a=1;
for n=-N1(j):N1(j)
gAprox=gAprox+Dn(a)*exp(i*n*W0*t1);
a=a+1;
end
gAprox1(j,:)=gAprox;
end

figure(1) %espectro de magnitud Dn


subplot(3,1,1)
stem(x,magDn)

subplot(3,1,2) %espectro de fase (angulo)Dn


stem(x,angDn)

subplot(3,1,3) %grafica de g(t)


plot(t1,gAprox1(1,:),'r',t1,gAprox1(2,:),'b',t1,gAprox1(3,:),'g')
legend('1ra','2da','3ra',4);

Das könnte Ihnen auch gefallen