Advertisement
Guest User

Untitled

a guest
Dec 15th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.18 KB | None | 0 0
  1. function [ ] = zad4()
  2. fs = 8000;
  3. f0 = 1000;
  4.  
  5. r1 = 0;
  6. r2 = 0.5;
  7. r3 = 0.9;
  8. r4 = 1;
  9. r5 = 1.1;
  10. r6 = 2;
  11. r7 = 3;
  12.  
  13. b1 = [1, -2*cos(2*pi*f0/fs), 1];
  14. a1 = [1, -2*r1*cos(2*pi*f0/fs), r1*r1];
  15. b2 = [1, -2*cos(2*pi*f0/fs), 1];
  16. a2 = [1, -2*r2*cos(2*pi*f0/fs), r2*r2];
  17. b3 = [1, -2*cos(2*pi*f0/fs), 1];
  18. a3 = [1, -2*r3*cos(2*pi*f0/fs), r3*r3];
  19. b4 = [1, -2*cos(2*pi*f0/fs), 1];
  20. a4 = [1, -2*r4*cos(2*pi*f0/fs), r4*r4];
  21. b5 = [1, -2*cos(2*pi*f0/fs), 1];
  22. a5 = [1, -2*r5*cos(2*pi*f0/fs), r5*r5];
  23. b6 = [1, -2*cos(2*pi*f0/fs), 1];
  24. a6 = [1, -2*r6*cos(2*pi*f0/fs), r6*r6];
  25. b7 = [1, -2*cos(2*pi*f0/fs), 1];
  26. a7 = [1, -2*r7*cos(2*pi*f0/fs), r7*r7];
  27.  
  28. [h12, t12] = freqz(b1,a1);
  29. [h22, t22] = freqz(b2,a2);
  30. [h32, t32] = freqz(b3,a3);
  31. [h42, t42] = freqz(b4,a4);
  32. [h52, t52] = freqz(b5,a5);
  33. [h62, t62] = freqz(b6,a6);
  34. [h72, t72] = freqz(b7,a7);
  35.  
  36.  
  37. figure('name','6.4a ­ Charakterystyka amplitudowa, f_0=1000Hz');
  38. hold on;
  39. plot(t12*fs/(2*pi),20*log10(abs(h12)),':', t22*fs/(2*pi),mag2db(abs(h22)), t32*fs/(2*pi), mag2db(abs(h32)),':', t42*fs/(2*pi), mag2db(abs(h42)), t52*fs/(2*pi),mag2db(abs(h52)), t62*fs/(2*pi),mag2db(abs(h62)), t72*fs/(2*pi), mag2db(abs(h72)),':');
  40. hold off
  41. xlabel('Czêstotliwoœæ[Hz]');
  42. ylabel('Magnituda[dB]');
  43. ylim([-70 10]);
  44. title('Charakterystyka amplitudowa, f_0=1000Hz');
  45. legend('r = 0','r = 0.5','r = 0.9','r = 1', 'r = 1.1', 'r = 2', 'r = 3');
  46. legend('Location','southeast');
  47. grid on;
  48.  
  49.  
  50. f1 = 2000;
  51. r1 = 0;
  52. r2 = 0.5;
  53. r3 = 0.9;
  54. r4 = 1;
  55. r5 = 1.1;
  56. r6 = 2;
  57. r7 = 3;
  58.  
  59.  
  60. b1 = [1, -2*cos(2*pi*f1/fs), 1];
  61. a1 = [1, -2*r1*cos(2*pi*f1/fs), r1*r1];
  62. b2 = [1, -2*cos(2*pi*f1/fs), 1];
  63. a2 = [1, -2*r2*cos(2*pi*f1/fs), r2*r2];
  64. b3 = [1, -2*cos(2*pi*f1/fs), 1];
  65. a3 = [1, -2*r3*cos(2*pi*f1/fs), r3*r3];
  66. b4 = [1, -2*cos(2*pi*f1/fs), 1];
  67. a4 = [1, -2*r4*cos(2*pi*f1/fs), r4*r4];
  68. b5 = [1, -2*cos(2*pi*f1/fs), 1];
  69. a5 = [1, -2*r5*cos(2*pi*f1/fs), r5*r5];
  70. b6 = [1, -2*cos(2*pi*f1/fs), 1];
  71. a6 = [1, -2*r6*cos(2*pi*f1/fs), r6*r6];
  72. b7 = [1, -2*cos(2*pi*f1/fs), 1];
  73. a7 = [1, -2*r7*cos(2*pi*f1/fs), r7*r7];
  74.  
  75. [h12, t12] = freqz(b1,a1);
  76. [h22, t22] = freqz(b2,a2);
  77. [h32, t32] = freqz(b3,a3);
  78. [h42, t42] = freqz(b4,a4);
  79. [h52, t52] = freqz(b5,a5);
  80. [h62, t62] = freqz(b6,a6);
  81. [h72, t72] = freqz(b7,a7);
  82.  
  83. figure('name','6.4a ­ Charakterystyka amplitudowa , f_0=2000Hz');
  84. hold on;
  85. plot(t12*fs/(2*pi),20*log10(abs(h12)),':', t22*fs/(2*pi),mag2db(abs(h22)), t32*fs/(2*pi), mag2db(abs(h32)),':', t42*fs/(2*pi), mag2db(abs(h42)), t52*fs/(2*pi),mag2db(abs(h52)), t62*fs/(2*pi),mag2db(abs(h62)), t72*fs/(2*pi), mag2db(abs(h72)),':');
  86. hold off
  87. xlabel('Czêstotliwoœæ[Hz]');
  88. ylabel('Magnituda[dB]');
  89. ylim([-70 10]);
  90. title('Charakterystyka amplitudowa, f_0=2000Hz');
  91. legend('r = 0','r = 0.5','r = 0.9','r = 1', 'r = 1.1', 'r = 2', 'r = 3');
  92. legend('Location','southeast');
  93. grid on;
  94.  
  95.  
  96. f2 = 3000;
  97. r1 = 0;
  98. r2 = 0.5;
  99. r3 = 0.9;
  100. r4 = 1;
  101. r5 = 1.1;
  102. r6 = 2;
  103. r7 = 3;
  104.  
  105. b1 = [1, -2*cos(2*pi*f2/fs), 1];
  106. a1 = [1, -2*r1*cos(2*pi*f3/fs), r1*r1];
  107. b2 = [1, -2*cos(2*pi*f2/fs), 1];
  108. a2 = [1, -2*r2*cos(2*pi*f3/fs), r2*r2];
  109. b3 = [1, -2*cos(2*pi*f2/fs), 1];
  110. a3 = [1, -2*r3*cos(2*pi*f2/fs), r3*r3];
  111. b4 = [1, -2*cos(2*pi*f2/fs), 1];
  112. a4 = [1, -2*r4*cos(2*pi*f2/fs), r4*r4];
  113. b5 = [1, -2*cos(2*pi*f2/fs), 1];
  114. a5 = [1, -2*r5*cos(2*pi*f2/fs), r5*r5];
  115. b6 = [1, -2*cos(2*pi*f2/fs), 1];
  116. a6 = [1, -2*r6*cos(2*pi*f2/fs), r6*r6];
  117. b7 = [1, -2*cos(2*pi*f2/fs), 1];
  118. a7 = [1, -2*r7*cos(2*pi*f2/fs), r7*r7];
  119.  
  120. [h12, t12] = freqz(b1,a1);
  121. [h22, t22] = freqz(b2,a2);
  122. [h32, t32] = freqz(b3,a3);
  123. [h42, t42] = freqz(b4,a4);
  124. [h52, t52] = freqz(b5,a5);
  125. [h62, t62] = freqz(b6,a6);
  126. [h72, t72] = freqz(b7,a7);
  127.  
  128. figure('name','6.4a ­ Charakterystyka amplitudowa, f_0=3000Hz');
  129. hold on;
  130. plot(t12*fs/(2*pi),20*log10(abs(h12)),':', t22*fs/(2*pi),mag2db(abs(h22)), t32*fs/(2*pi), mag2db(abs(h32)),':', t42*fs/(2*pi), mag2db(abs(h42)), t52*fs/(2*pi),mag2db(abs(h52)), t62*fs/(2*pi),mag2db(abs(h62)), t72*fs/(2*pi), mag2db(abs(h72)),':');
  131. hold off
  132. xlabel('Częstotliwość[Hz]');
  133. ylabel('Magnituda[dB]');
  134. ylim([-70 10]);
  135. title('Charakterystyka amplitudowa, f_0=3000Hz');
  136. legend('r = 0','r = 0.5','r = 0.9','r = 1', 'r = 1.1', 'r = 2', 'r = 3');
  137. legend('Location','southwest');
  138. grid on;
  139.  
  140.  
  141. f1 = 1000;
  142. f2 = 2000;
  143. f3 = 3000;
  144.  
  145. r1 = 0.9;
  146. r2 = 0.9;
  147. r3 = 0.9;
  148. r4 = 0;
  149. r5 = 0.5;
  150. r6 = 0.9;
  151. r7 = 1;
  152. r8 = 1.1;
  153.  
  154. b1 = [1, -2*cos(2*pi*f1/fs), 1];
  155. a1 = [1, -2*r1*cos(2*pi*f1/fs), r1*r1];
  156. b2 = [1, -2*cos(2*pi*f2/fs), 1];
  157. a2 = [1, -2*r2*cos(2*pi*f2/fs), r2*r2];
  158. b3 = [1, -2*cos(2*pi*f3/fs), 1];
  159. a3 = [1, -2*r3*cos(2*pi*f3/fs), r3*r3];
  160. b4 = [1, -2*cos(2*pi*f2/fs), 1];
  161. a4 = [1, -2*r4*cos(2*pi*f2/fs), r4*r4];
  162. b5 = [1, -2*cos(2*pi*f2/fs), 1];
  163. a5 = [1, -2*r5*cos(2*pi*f2/fs), r5*r5];
  164. b6 = [1, -2*cos(2*pi*f2/fs), 1];
  165. a6 = [1, -2*r6*cos(2*pi*f2/fs), r6*r6]
  166. b7 = [1, -2*cos(2*pi*f2/fs), 1];
  167. a7 = [1, -2*r7*cos(2*pi*f2/fs), r7*r7];
  168. b8 = [1, -2*cos(2*pi*f2/fs), 1];
  169. a8 = [1, -2*r8*cos(2*pi*f2/fs), r8*r8];
  170.  
  171. gauss = normrnd(0, sqrt(0.5), 1, 8000).';
  172.  
  173. y61c = filter(b1, a1, gauss);
  174. figure('name','Spektrogram fs = 1000, r= 0.9');
  175. spectrogram(y61c,window(@hann, 256),0,256,8000,'yaxis');
  176. title('Spektrogram filtrowanego szumu, f0 = 2000, r=0.9');
  177.  
  178. y62c = filter(b2, a2, gauss);
  179. figure('name','Spektrogram fs = 2000, r= 0.9');
  180. spectrogram(y62c,window(@hann, 256),0,256,8000, 'yaxis');
  181. title('Spektrogram filtrowanego szumu, f0 = 3000, r=0.9');
  182.  
  183. y63c = filter(b3, a3, gauss);
  184. figure('name','Spektrogram fs = 3000, r= 0.9');
  185. spectrogram(y63c,window(@hann, 256),0,256,8000, 'yaxis');
  186. title('Spektrogram filtrowanego szumu, f0 = 2000, r=0.9');
  187.  
  188. y64c = filter(b4, a4, gauss);
  189. figure('name','Spektrogram fs = 2000, r= 0');
  190. spectrogram(y64c,window(@hann, 256),0,256,8000, 'yaxis');
  191. title('Spektrogram filtrowanego szumu, f0 = 3000, r=0');
  192.  
  193. y61c = filter(b5, a5, gauss);
  194. figure('name','Spektrogram fs = 2000, r= 0.5');
  195. spectrogram(y61c,window(@hann, 256),0,256,8000,'yaxis');
  196. title('Spektrogram filtrowanego szumu, f0 = 2000, r=0.5');
  197.  
  198. y62c = filter(b6, a6, gauss);
  199. figure('name','Spektrogram fs = 2000, r= 0.9');
  200. spectrogram(y62c,window(@hann, 256),0,256,8000, 'yaxis');
  201. title('Spektrogram filtrowanego szumu, f0 = 3000, r=0.9');
  202.  
  203. y63c = filter(b7, a7, gauss);
  204. figure('name','Spektrogram fs = 2000, r=1');
  205. spectrogram(y63c,window(@hann, 256),0,256,8000, 'yaxis');
  206. title('Spektrogram filtrowanego szumu, f0 = 2000, r=1');
  207.  
  208. y64c = filter(b8, a8, gauss);
  209. figure('name','Spektrogram fs = 2000, r= 1.1');
  210. spectrogram(y64c,window(@hann, 256),0,256,8000, 'yaxis');
  211. title('Spektrogram filtrowanego szumu, f0 = 2000, r=1.1');
  212. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement