ip_06_06.m
上传用户:loeagle
上传日期:2013-03-02
资源大小:1236k
文件大小:1k
源码类别:

通讯编程文档

开发平台:

Matlab

  1. % MATLAB script for Illustrative Problem 6, Chapter 6.
  2. echo on
  3. N=52;
  4. noise_var=0.25;
  5. sigma=sqrt(noise_var); % standard deviation of the noise
  6. for i=1:N, % generate data sequence
  7.    if (rand<0.5), 
  8.       I(i)=1;
  9.    else
  10.       I(i)=-1;
  11.    end;
  12.    echo off ;
  13. end;
  14. echo on ;
  15. % for channel1:
  16. A=1;
  17. B=[0.1 -0.25 1 -0.25 0.1];
  18. rec_sig1=filter(B,A,I);     % the received signal without noise for channel 1
  19. rec_sig1=rec_sig1([3:N]);   % to compensate for the delay in filtering
  20. for i=1:N-2,
  21.    noise(i)=gngauss(sigma);
  22.    echo off ;
  23. end;
  24. echo on ;
  25. y1=rec_sig1+noise;     % received signal with noise for channel 1
  26. % for channel 2:
  27. A=1;
  28. B=[-0.2 0.5 1 0.5 -0.2];
  29. rec_sig2=filter(B,A,I);     % the received signal without noise for channel 2
  30. rec_sig2=rec_sig2(3:N);     % to compensate for the delay in filtering 
  31. for i=1:N-2,
  32.    noise(i)=gngauss(sigma);
  33.    echo off ;
  34. end;
  35. echo on ;
  36. y2=rec_sig2+noise;          % received signal with noise for channel 2
  37. % plotting commands follow