Advertisement
Guest User

elo2

a guest
Nov 14th, 2019
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. clear all; close all;
  2.  
  3. dx = (2*pi)/100;
  4. x = 0 : dx : 4*pi;
  5. N = length(x);
  6. y = sin(x); yr = cos(x);
  7.  
  8.  
  9. d1 = [ -1 1]; d1=fliplr(d1); N1=length(d1);
  10. d2 = [ -1 0 1]; d2=fliplr(d2); N2=length(d2);
  11. d3 = 1/12*[1 -8 0 8 -1]; d3=fliplr(d3); N3=length(d3);
  12.  
  13. SNR = [240, 80, 50, 30, 20 ];
  14.  
  15. for k = 1 : length(SNR)
  16. k, SNR(k),
  17. yn = awgn(y,SNR(k));
  18.  
  19. yd1 = conv(yn, d1 ) / dx;
  20. yd2 = conv(yn, d2 ) / (2*dx);
  21. yd3 = conv(yn, d3 ) / dx;
  22.  
  23. figure
  24. plot( x,yr,'k', ...
  25. x(1:N-1)+pi/100,yd1(N1:end-N1+1),'r' ...
  26. ,x(2:N-1),yd2(N2:end-N2+1),'g', ...
  27. x(3:N-2),yd3(N3:end-N3+1),'b');
  28. end
  29.  
  30.  
  31. x1 = zeros(1,100);
  32. x2 = zeros(1,99);
  33. for i=1:100
  34. x1(i) = x(i);
  35. end
  36. for i=1:99
  37. x2(i) = x(i);
  38. end
  39. y1 = sin(x);
  40. y1 = awgn(y1, 20);
  41. y2 = cos(x);
  42. P = zeros(1,101);
  43. wstecz = zeros(1,100);
  44. centralny = zeros(1,99);
  45. for i=1:100
  46. wstecz(i) = (y1(i+1)-y1(i))/(x(i+1)-x(i));
  47. end
  48. for i=2:100
  49. centralny(i-1) = (y1(i+1)-y1(i-1))/(x(i+1)-x(i-1));
  50. end
  51. fir = firls(4, [0 0.5 0.7 1], [0 0.5*pi 0 0], 'differentiator');
  52. filtr = filter(fir, 1, y1);
  53. plot(x,y2,'r', x1,wstecz,'b', x2,centralny,'g');
  54. %plot();
  55. %plot(x2,centralny,'g');
  56.  
  57.  
  58. MM = [10,25,50,100];
  59.  
  60. dx = (2*pi)/200;
  61. x = 0 : dx : 8*pi;
  62. N = length(x);
  63. y = sin(x); yr = cos(x);
  64.  
  65. for k = 1 : length(MM)
  66. k, MM(k)
  67. %yn=y;
  68. yn = awgn(y,20);
  69. % zaszumienie
  70. M=MM(k);
  71. m=-M:1:M;
  72. h = cos(pi*m)./m;
  73. h(M+1)=0; % odp. impulsowa filtru r�nicz.
  74. w = blackman(2*M+1)';
  75. h = h .* w; % opcjonalne wyg�adzenie brzeg�w
  76. yd4 = conv(yn, h)/dx; % operacja splotu (filtracji)
  77.  
  78. figure
  79. plot(x,yn,'b', x,yr,'k',x(M+1:N-M),yd4(2*M+1:end-2*M),'r'); grid
  80. %plot(x,yn,'b', x,yr,'k',x,yd4,'r'); grid
  81. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement