Fourier Transform of tripuls
13 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Below you got what I've tried, but it does not work. The second graph does not match with the actual fft of a triangle function. Can someone help me? The use of tripuls is required! Ty!
clc
t=-2:.01:2;
subplot(2, 1, 1);
x=tripuls(t,2);
plot(t, x);
title('Triangle');
subplot(2, 1, 2);
Ts = mean(diff(t)); % Sampling Interval
Fs = 1/Ts; % Sampling Frequency
Fn = Fs/2; % Nyuquist Frequency
L = length(x);
ftx = fft(x)/L; % Fourier Transform
ftxs = fftshift(ftx); % Shift To Centre
plot(t, ftxs);
title('TdF Triangle');
0 commentaires
Réponses (1)
Priyanshu Mishra
le 29 Juil 2020
Hi Moisa,
fft is giving you a complex double values . Try taking only absolute values. I tried the following code and getting sinc squared function which is expected for a triangular pulse.
clc
t=-2:.01:2;
subplot(2, 1, 1);
x=tripuls(t,2);
plot(t, x);
title('Triangle');
subplot(2, 1, 2);
Ts = mean(diff(t)); % Sampling Interval
Fs = 1/Ts; % Sampling Frequency
Fn = 2*Fs; % Nyuquist Frequency
L = length(x);
ftx = abs(fft(x)); % Fourier Transform
ftxs = fftshift(ftx); % Shift To Centre
plot(t, ftxs);
title('TdF Triangle')
0 commentaires
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!