How can I implement the fft function on both signals.
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
% generate a waveform
f0 =100;
fs=1000;
pw = 0.1;
pri = 1;
npulses = 100;
s = cos(2*pi*f0*(0:1/fs:pw)); % it can be any other waveform of your choice
s(round(fs*pri)) = 0; % PRI
s = repmat(s, npulses, 1); % npulses
% echo: delayed signal
tau = 0.3;
ntau = round(fs*tau);
amp = 0.5;
e = amp* circshift(s, ntau);
% add noise
sigma = 0.1;
r = s + e + sigma*randn(size(s));
y = pulsint(r);
Fn = fs/2
Fn = 500
Fco = 125; % Choose A Frequency > 0 & < fs/2
r_filt = lowpass(r, Fco, fs, 'ImpulseResponse','iir'); % Design An Elliptic Filter & Filter 'r'
figure
plot((0:length(s)-1)/fs, r_filt)
title('Filtered')
1 commentaire
dpb
le 7 Sep 2022
What both signals?
As to the Q?, it's simple enough; either call fft twice, once for each desired input; this, of course, means you've got to create two new variable for the results (or use one for whatever purposes desired first before computing the second).
Alternatively, and "the MATLAB way" would be to put both signals into an array by column and then call FFT() -- it is vectorized to treat each column as a variable.
Réponses (0)
Voir également
Catégories
En savoir plus sur Fourier Analysis and Filtering dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!