FFT of Linear FM Pulse Waveform

조회 수: 9 (최근 30일)
Jeffrey
Jeffrey 2020년 6월 17일
답변: Hrishikesh Borate 2020년 6월 18일
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.

답변 (1개)

Hrishikesh Borate
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.
For more information, refer to FFT Documentation

카테고리

Help CenterFile Exchange에서 Pulsed Waveforms에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by