Analog output signal after applying DFT

1 vue (au cours des 30 derniers jours)
Matlab Student
Matlab Student le 7 Oct 2018
Hello Team,
I need to apply Discrete Fourier Transform to a vector following the equation attached to this post. So I have written this code. The output will be a digital vector, am I right?
if true
% code
function [horFourier, verFourier] = DFT(hProfile, vProfile)
lengthH = length(hProfile);
lengthV = length(vProfile);
for xH=1:1:lengthH
sumH =0;
for yH=1:1:lengthH
sumH = sumH + hProfile(yH)*exp((-1j)*2*pi*yH*xH/lengthH-1);
end
horFourier(xH) = abs(sumH);
end
for xV=1:1:lengthV
sumV = 0;
for yV=1:1:lengthV
sumV = sumV + vProfile(yV)*exp((-1j)*2*pi*yV*xV/lengthV-1);
end
verFourier(xV) = abs(sumV);
end
end end
What should I do to have an analog signal? The output should be an analog signal so that I can compute the other steps.

Réponses (1)

Walter Roberson
Walter Roberson le 7 Oct 2018
You can never use an analog signal for computation on a digital computer. There are computations that can be done at the analog level, including gain (voltage multiplier), filters (inductors, transformers, resistors), integration (charging a capacitor), and so on, and if you have external hardware that is doing those kinds of operations then you need a digital to analog converter of some sort.
  5 commentaires
Matlab Student
Matlab Student le 8 Oct 2018
Good Morning Walter,
After digging deeper, I found they have plot the DFT coefficients as an analog signal (attached picture) hence they were able to provide the output of any value (integer or non-integer).
Can I do the same?
Walter Roberson
Walter Roberson le 8 Oct 2018
That picture does not show an analog signal. It shows a plot of dft coefficients, which are calculated as digital values.

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by