Time Domain Signal Convolution

6 vues (au cours des 30 derniers jours)
Suki Sule
Suki Sule le 2 Jan 2016
Commenté : Image Analyst le 4 Jan 2016
I wish to convolve multiple 1D time domain (amplitude vs time) signals which are imported in ASCii format from CST software. This is because I have multiple antennas excited in time domain impulse and this produces separate 1D signals. I need to convolve these signals to get the single received 1D signal waveform. When importing the ASCii files, what format is best? Then how do I convolve the signals to get a single output signal and plot it in 2D?

Réponse acceptée

Image Analyst
Image Analyst le 2 Jan 2016
"When importing the ASCii files, what format is best?" <== I'd choose to have the numbers in a CSV file if you can. Numbers are separated by commas and you can easily use csvread(), and it's much faster than xlsread().
signal = csvread(filename);
"how do I convolve the signals to get a single output signal and plot it in 2D?" <== Try this:
output = conv(signal, kernel, 'full'); % Or 'same' whichever you want.
plot(output, 'b*-', 'LineWidth', 2, 'MarkerSize', 10);
grid on;
title('Filtered signal from convolution', 'FontSize', 20);
ylabel('filtered signal', 'FontSize', 20);
xlabel('index', FontSize', 20);
  2 commentaires
Suki Sule
Suki Sule le 4 Jan 2016
Thanks. The CST automatically saves the output in .txt format. Can I use this?
Image Analyst
Image Analyst le 4 Jan 2016
Yes, but what's in between the numbers? If it's a comma, use csvread(). If it's something else, try dlmread() or importdata().

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Environment and Clutter 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!

Translated by