You are on page 1of 8

Alumno: Aristeo Barrios Rivera

Materia: Transitorios Electromecnicos


Algoritmo numrico para el clculo de la Transformada Inversa de Fourier.
Paso 1.
Obtener la Transformada de Laplace de la funcin en el tiempo y sustituir la variable por
de Fourier desde
hasta
.
[ ( )]

para obtener la Transformada

( )

donde:

Se obtiene un vector de N/2 muestras.

[
]
Vector obtenido
Espectro de la funcin evaluado en

Espectro de la funcin evaluado en

Paso 2.
Acomodar las muestras para obtener un vector simtrico, se conjuga la penltima muestra y se posiciona en una posicin ms grande
que el vector normal, despus se toma la antepenltima muestra y se posicin en dos posiciones ms grandes que el vector normal y as
sucesivamente hasta llegar a la muestra 1, el procedimiento se puede observar en la siguiente figura.

[
]
Vector obtenido
Espectro de la funcin evaluado en

Paso 3.
Se multiplica la funcin F por una ventana para evitar discontinuidades al principio y al final del tiempo de observacin. Se escoge la
ventana de Hanning.
(

) (

Ventana de Hanning.
( )

Ventana de Hanning.

Paso 4.
Obtener la Transformada Inversa de Fourier, extraer la parte real y multiplicar por
tiempo.
{

de esta manera se obtiene un vector en el

Funcin Coseno Muestras: 1024 Frecuencia: 60 Hz


Transformada de Fourier

Transformada de Fourier

-3

-3

x 10

2.5

2.5

1.5

1.5

0.5

0.5

0
-1

x 10

Magnitud [F(w)]

Magnitud [F(w)]

-0.8

-0.6

-0.4

-0.2
0
0.2
Frecuencia [Hz]

0.4

0.6

0.8

x 10

Transformada de Fourier

4
5
6
Frecuencia [Hz]

10
4

x 10

Campana de Hanning

-3

x 10

1
0.9

2.5

0.8
0.7

Magnitud [F(w)]

1.5

0.6
0.5
0.4
0.3
0.2

0.5

0.1
0

0.2

0.4

0.6

0.8
1
1.2
Frecuencia [Hz]

1.4

1.6

1.8

0.2

0.4

0.6

x 10

Funcin reconstruida
2
1.5
1

Magnitud [f(t)]

Magnitud [F(w)]

0.5
0
-0.5
-1
-1.5
-2

0.005

0.01

0.015
Tiempo [s]

0.02

0.025

0.03

0.8
1
1.2
Frecuencia [Hz]

1.4

1.6

1.8

2
5

x 10

Funcin Escaln Muestras: 1024


Transformada de Fourier

Transformada de Fourier

-3

-3

x 10

0
-1

x 10

Magnitud [F(w)]

Magnitud [F(w)]

-0.8

-0.6

-0.4

-0.2
0
0.2
Frecuencia [Hz]

0.4

0.6

0.8

x 10

Transformada de Fourier

4
5
6
Frecuencia [Hz]

10
4

x 10

Campana de Hanning

-3

x 10

1
0.9

0.8
0.7

Magnitud [F(w)]

0.6
0.5
0.4
0.3
0.2

0.1
0

0.2

0.4

0.6

0.8
1
1.2
Frecuencia [Hz]

1.4

1.6

1.8

0.2

0.4

0.6

x 10

Funcin reconstruida
2
1.5
1

Magnitud [f(t)]

Magnitud [F(w)]

0.5
0
-0.5
-1
-1.5
-2

0.005

0.01

0.015
Tiempo [s]

0.02

0.025

0.03

0.8
1
1.2
Frecuencia [Hz]

1.4

1.6

1.8

2
5

x 10

Funcin Seno Muestras: 1024 Frecuencia: 60 Hz


Transformada de Fourier

Transformada de Fourier

-3

-3

x 10

2.5

2.5

1.5

1.5

0.5

0.5

0
-1

x 10

Magnitud [F(w)]

Magnitud [F(w)]

-0.8

-0.6

-0.4

-0.2
0
0.2
Frecuencia [Hz]

0.4

0.6

0.8

x 10

Transformada de Fourier

4
5
6
Frecuencia [Hz]

10
4

x 10

Campana de Hanning

-3

x 10

1
0.9

2.5

0.8
0.7

Magnitud [F(w)]

1.5

0.6
0.5
0.4
0.3
0.2

0.5

0.1
0

0.2

0.4

0.6

0.8
1
1.2
Frecuencia [Hz]

1.4

1.6

1.8

0.2

0.4

0.6

x 10

Funcin reconstruida
2
1.5
1

Magnitud [f(t)]

Magnitud [F(w)]

0.5
0
-0.5
-1
-1.5
-2

0.005

0.01

0.015
Tiempo [s]

0.02

0.025

0.03

0.8
1
1.2
Frecuencia [Hz]

1.4

1.6

1.8

2
5

x 10

clc, clear all


close
format long

F
T
m
N
dt
W

=
=
=
=
=
=

60
33.333e-3
10
2^m
T/N
pi/dt

t
f

= 0:dt:T;
= cos(2*pi*F.*t);

% plot(t,f)
% grid on
%========================================================================================
==========================================
%Funcion Coseno en la Frecuencia
dw
w0
W
c
k

=
=
=
=
=

(2*pi)/(N*dt);
2*pi*F;
pi/dt;
dw;
(0:N/2);

s = c+1i.*k.*dw;
Fk = (w0) ./ (s.^2 + w0.^2) %Seno
%Fk = (s) ./ (s.^2 + w0.^2) %Coseno
%Fk = 1./s; %Escalon
%Fk = 1./(s.^2); %Rampa
%
%
%
%
%
%

figure(1)
plot(k*dw,abs(Fk),'black','LineWidth',3)
grid on
xlabel('Frecuencia [Hz]')
ylabel('Magnitud [F(w)]')
%axis([0 0.6e4 0 3e-3])

Fkn = Fk;
l
= length(Fk);
p
= 2;
for d=l:(2*l-3)
Fk(d+1) = conj(Fkn(d+1-p));
p = p+2;
end
Fk = Fk.';

knl = length(Fk);
kn = 1:knl;
%
%
%
%
%
%
%

figure(1)
plot(kn*dw,abs(Fk),'black','LineWidth',3)
grid on
xlabel('Frecuencia [Hz]')
ylabel('Magnitud [F(w)]')
% axis([-0.05e5 2e5 -0.1e-3 3e-3])
%

%========================================================================================
==========================================
%Ventana de Hanning
sigma = 0.5 + 0.5.*cos((pi.*kn.*dw)./W);
%
%
%
%
%
%
%
%

figure (1)
plot(kn*dw,sigma,'black','LineWidth',3)
grid on
xlabel('Frecuencia [Hz]')
ylabel('Magnitud [F(w)]')
% axis([-0.05e5 2e5 -0.1e-3 3
break

%========================================================================================
==========================================
fn1 = Fk.*sigma.'
figure (1)
plot(kn*dw,fn1,'black','LineWidth',3)
grid on
xlabel('Tiempo [s]')
ylabel('Magnitud [f(t)]')

fn2 = ifft(fn1);
fn3 = real(fn2);
n

= 0:knl-1;

fn4 = (( exp(c.*n.*dt) )./dt).';


fn

= fn4 .* fn3;

figure (1)
plot(n*dt,fn,'black','LineWidth',3)
grid on
xlabel('Tiempo [s]')
ylabel('Magnitud [f(t)]')
axis([0 0.032 -2 2])

You might also like