Advertisement
Guest User

Untitled

a guest
Nov 15th, 2018
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 1.58 KB | None | 0 0
  1. close all; clear all; clc;
  2. a = load('sejs_2.txt');
  3. [Np, Nt] = size(a);
  4. Fs = 400;
  5. dx = 25;
  6. t=(0:(Np-1))'/Fs;
  7. figure; hold on;
  8. for k=1:24
  9.     plot(t, a(:,k)+k-1);
  10.     xc = xcorr(a(:,k),a(:,1));
  11.     FB(k,1)=find(xc==max(xc(:)),1,'first')
  12. end
  13. hold off
  14. %Obliczenie rózniczy czasu pomiędzy odbiornikiem k'tym a pierwszym.
  15. %Interesuje nas tylko wartosc max.  nie musimy zapamietac wektora.
  16.  
  17. FB =(FB-Np)/Fs %odjąć ilość próbek (przesówamy się do zera. pierwsza próbka względem pierwszej ma zerowe przesunięcie)
  18.  
  19. %Jak znając czasowe przesunięcie, odgadnąć prędkość?
  20. %prędkośc : dx/dt
  21. %wykorzystać regresję liniową (linia trendu), bo śrenia to w podstawówce.
  22. %mamy układ równań, 23 równania, 1 niewiadoma.
  23. %dx = v * dt. zamieniamy dx na 25 wartości od 0 do 575. dt na próbkowanie
  24. %Fs.
  25. %zamieniamy dx dt na wektory.
  26. G=ones(Nt,2);
  27. G(:,1)=FB; %Do pierwszej kolumny wstawiamy wartosci z FB;
  28. x=(0:Nt-1)'*dx;
  29. v=pinv(G'*G)*G'*x %Otrzymujemy prędkość. oraz przesunięcie. Prędkość 600.
  30. v=pinv(G)*x %pinv to macierz odwrotna. argument^-1
  31.  
  32. %%Szereg Fouriera, zamiana funkcji niecigej na cigla.
  33. close all; clear all; clc;
  34. Fs=100;
  35. t=-10:(1/Fs):10;
  36. xt=1.0*(abs(t)<1);
  37. XT=ones(size(t))/2;
  38. for n=1:15000
  39.     an=2*sin(n*pi/2)/(n*pi);
  40.     XT=XT+an*cos(n*pi*t/2);
  41. end
  42. plot(t,xt,'.r',t,XT,'g')
  43.  
  44. %%Szereg Fouriera, Trójkąt
  45. close all; clear all; clc;
  46. Fs=100;
  47. t=-10:(1/Fs):10;
  48. xt=1.0*(1-abs(t)).*(abs(t)<1);
  49. XT=ones(size(t))/8; %%wyraz wolny
  50. for n=1:100
  51.     an=8*(1-cos(n*pi/4))/(n*n*pi*pi);
  52.     XT=XT+an*cos(n*pi*t/4);
  53. end
  54. plot(t,xt,'.r',t,XT,'g')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement