LFM.m
上传用户:szahd2008
上传日期:2020-09-25
资源大小:1275k
文件大小:1k
源码类别:

传真(Fax)编程

开发平台:

Matlab

  1. function LFM(B,T);
  2. time_B_product = B * T;
  3. if(time_B_product < 5 )
  4.     fprintf('************ Time Bandwidth product is TOO SMALL ***************')
  5.     fprintf('n Change B and or T')
  6.     return
  7. else
  8. end
  9. % Compute alpha
  10. mu = 2. * pi * B / T;
  11. npoints = 5 * B * T + 1;
  12. % Determine sampling times
  13. delt = linspace(-T/2., T/2., npoints); % 
  14. % Compute the complex LFM representation
  15. Ichannal = cos(2*pi*mu .* delt.^2 / 2.); % Real part
  16. Qchannal = sin(2*pi*mu .* delt.^2 / 2.); % Imaginary Part
  17. LFM = Ichannal + sqrt(-1) .* Qchannal; % complex signal
  18. %Compute the FFT of the LFM waveform
  19. LFMFFT = fftshift(fft(LFM));
  20. % Plot the real and Inginary parts and the spectrum
  21. sampling_interval = T / npoints;
  22. freqlimit = 0.5 / sampling_interval;
  23. freq = linspace(-freqlimit,freqlimit,npoints);
  24. figure(1)
  25. plot(delt,Ichannal,'k');
  26. axis([-T/2 T/2 -1 1])
  27. grid
  28. xlabel('Time - seconds')
  29. ylabel('Units of Waveform')
  30. title('Real part of an LFM waveform')
  31. figure(2)
  32. plot(delt,Qchannal,'k');
  33. axis([-T/2 T/2 -1 1])
  34. grid
  35. xlabel('Time - seconds')
  36. ylabel('Units of Waveform')
  37. title('Imaginary part of LFM waveform')
  38. figure(3)
  39. plot(freq, abs(LFMFFT),'k');
  40. %axis tight
  41. grid
  42. xlabel('Frequency - Hz')
  43. ylabel('Amplitude spectrum')
  44. title('Spectrum for an LFM waveform')'
  45. return