FFT of Linear FM Pulse Waveform
7 ビュー (過去 30 日間)
古いコメントを表示
After I generate a waveform using phased.LinearFMWaveform from the Phased Array System Toolbox, how do I take the FFT of this waveform?
prf = [1e3];
waveform = phased.LinearFMWaveform('PRF',prf,'SweepBandwidth',200e3,'PulseWidth',100e-6,'NumPulses',5);
sig = waveform();
T = length(sig)*(1/waveform.SampleRate);
t = unigrid(0,1/waveform.SampleRate,T,'[)');
plot(t,real(sig))
xlabel('millisec')
When I try to take fft(waveform), MATLAB shows the error:
Error using fft
Invalid data type. First argument must be double, single, int8, uint8, int16, uint16, int32, uint32, or
logical.
0 件のコメント
回答 (1 件)
Hrishikesh Borate
2020 年 6 月 18 日
Hi,
It’s my understanding that you are trying to generate FFT of waveform, which you have generated using phase.LinearFMWaveform from Phased Array System Toolbox. The fft function doesn’t support waveform object as it’s argument. So, the solution would be to pass sig as argument instead of waveform. Use fft(sig) in your code.
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Pulsed Waveforms についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!