1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
| clear;clc;
load('pas_mike_150k_01.mat')
v1 = pas_mike_150k_01.Y(1,1).Data;
j=1; k=1; m =0;
Nv1 = length(v1);
for i = 1 : Nv1
Tv1(1,i) = j/10000; j = j+1;
end
for j =1:Nv1
if abs(v1(1,j)) >= 0.025
V1(1,k) = v1(1,j);
k = k+1; m = 1;
elseif abs(v1(1,j)) < 0.025 && m <=10
m = m+1;
V1(1,k) = v1(1,j);
k = k+1;
elseif abs(v1(1,j)) < 0.025 && m >10
V1(1,k) = 0;
k = k+1;
m = m+1;
end
end
figure(4)
% plot(Tv1,v1,'b','LineWidth',3)
grid on
hold on
plot(Tv1,V1,'r','LineWidth',3)
%% Battements dans vecteurs
vecteur=struct( 'vect', {[]});
tempbattement=1800;
nvecteur=0;
j=0;
nbbat=ceil(size(find(V1(1:size(Tv1,2)))~=0,2)/tempbattement)+2;
fprintf('Nombres de battements : %d \n', nbbat)
k=1;
for i=1:size(Tv1,2)
j=j+i;
if k<nbbat+1
if V1(j)~=0
nvecteur=nvecteur+1;
vecteur(nvecteur).vect(1,:)=Tv1(j-i+1:j-i+1+tempbattement);
vecteur(nvecteur).vect(2,:)=V1(j-i+1:j-i+1+tempbattement);
quiver(Tv1(j-i+1),0,0,1,'b');
quiver(Tv1(j-i+1+tempbattement),0,0,1,'g');
j=j+tempbattement;k=k+1;
end
end
end
for i=1:nbbat;
figure
plot(vecteur(i).vect(1,:),vecteur(i).vect(2,:))
end |
Partager