Analog output signal after applying DFT
1 次查看(过去 30 天)
显示 更早的评论
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.
0 个评论
回答(1 个)
Walter Roberson
2018-10-7
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 个评论
Walter Roberson
2018-10-8
That picture does not show an analog signal. It shows a plot of dft coefficients, which are calculated as digital values.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Transforms 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!