Advertisement
Guest User

Untitled

a guest
Jan 10th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Octave 1.80 KB | None | 0 0
  1. % Długość pojedynczej serii pomiarowej
  2. nser=1000
  3. % Dopuszczalny błąd synchronizacji (zakładamy rozkład równomierny)
  4. njitter=10
  5. % Liczba uśrednianych realizacji
  6. nreal=10000
  7. % Odchylenie standardowe szumu zakłócającego
  8. nstd=20
  9. % wygenerujmy sygnał testowy
  10. % Będzie on złożony z trzech impulsów prostokątnych
  11.  
  12. x=zeros(1,600);
  13. x(1:100)=1;
  14. x(101:200)=-0.6;
  15. x(500:510)=2;
  16.  
  17. % tego nie potrzebujemy - zamiast tego :
  18. %tutaj trzeba pobrac sygnal - jest zapisany w zmiennej sig
  19.  
  20. % usuńmy składową stałą
  21. x=sig-mean(sig);
  22. % wyświetlamy sygnał oryginalny po rozszerzeniu do "nser"
  23. % i przesunięciu do 100-nej próbki
  24. xpl=zeros(1,nser);
  25. xpl(100:699)=x;
  26. subplot(311)
  27. plot(xpl)
  28. grid on
  29. title("Odpowiedz ukladu")
  30. % Teraz stworzymy tablicę symulującą kolejne wyniki pomiaru
  31. % Najpierw wypełniamy ją szumem białym o założonym odch. std.
  32. pomiar=sqrt(nstd*12)*(rand(nreal,nser)-0.5);
  33. % Teraz dodajemy nasz sygnał do kolejnych realizacji
  34. for i=1:nreal
  35.    % Zakładamy, że normalnie powinien od rozpocząć się od 100-nej
  36.    % próbki, jednak dopuszczamy opóżnienie o rozkładzie równomiernym
  37.    % w zakresie 0 do njitter
  38.    nstart=100;
  39.    if njitter>0
  40.      nstart+=randi(njitter+1)-1;
  41.    end
  42.    pomiar(i,nstart+(0:599))+=x;
  43. end
  44. % Wyświetlamy pierwszą realizację, żeby było widać jak sygnał ukryty jest w szumie
  45. subplot(312)
  46. plot(pomiar(1,:))
  47. grid on
  48. title("Odpowiedz ukryta w szumie")
  49. % Uśredniamy - używamy szybkich operacji macierzowych
  50. xsr=mean(pomiar);
  51. % Obliczamy odchylenie standardowe średniej (dzieląc odchylenie standardowe danych przez
  52. % pierwiastek z liczby uśrednień)
  53. xsrstd=std(pomiar)/sqrt(nreal);
  54. subplot(313)
  55. plot(1:nser,xsr,'k',1:nser,xsr+xsrstd,'y',1:nser,xsr-xsrstd,'b')
  56. grid on
  57. title("Odpowiedz wydobyta przez usrednianie realizacji")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement