ANNEXE A
******************** code source de la fonction
vue_3d.m********************
function vue_3d(nbr_files)
% nbr_files passé en paramètre dans la fonction
désigne le nombre de% fichiers contenu le repertoire
Fe = 25600; % fréquence
d'échantillonage
data = load('acc_00001.csv');
z1 = data(:,5);
z2 = data(:,6);
% calcul de la transformée de Fourier
Z_horiz = abs(fft(z1));
Z_vert = abs(fft(z2));
N = length(z1);
for i = 2 : nbr_files %boucle principale qui permet de
parcourir tous les fichiers
% l'étape qui suit va nous permettre de construire
le nom de chaque fichier
if i < 10
indice = int2str(i);
file_name = strcat('acc_0000',indice,'.csv');
elseif i < 100
indice = int2str(i);
file_name = strcat('acc_000',indice,'.csv');
elseif i < 1000
indice = int2str(i);
file_name = strcat('acc_00',indice,'.csv');
else
indice = int2str(i);
file_name = strcat('acc_0',indice,'.csv');
end
% fin de la construction du nom du fichier
%maintenant nous passons à l'étape de la
récupération des données
data = load(file_name);
z1 = data(:,5);
z2 = data(:,6);
% calcul de la transformée de Fourier
z1 = abs(fft(z1));
z2 = abs(fft(z2));
% construcion des matrices de maillage
Z_horiz = [Z_horiz z1];
Z_vert = [Z_vert z2];
end
%sauvegarde des données
xlswrite('spectre_horiz_roulement1.xlsx' , Z_horiz);
xlswrite('spectre_vert_roulement1.xlsx' , Z_vert);
%axes des abscices et des ordonnées
x = 1 : nbr_files ;
y = (0 : N-1)*Fe/N ;
%axe des fréquences
freq = y(1,1:N/2);
% Matrices de maillage
Zh = Z_horiz(1:N/2,:);
Zv = Z_vert(1:N/2,:);
% représentation graphique
accélération horizontale
figure(1)
mesh(x,freq,Zh)
xlabel('numéro du fichier')
ylabel('fréquence (Hz)')
zlabel('magnitude (dB)')
title('accélération Horizontale')
% représentation graphique
accélération verticale
figure(2)
mesh(x,freq,Zv)
xlabel('numéro du fichier')
ylabel('fréquence (Hz)')
zlabel('magnitude (dB)')
title('accélération verticale')
ANNEXE B
****************** code source de la fonction
moyenne5.m******************
functionmoyenne5(nbr_files)
% nbr_files passé en paramètre dans la fonction
désigne le nombre de % fichiers contenu le repertoire
for i = 1 : nbr_files %boucle principale qui permet de
parcourir tous les fichiers
% l'étape qui suit va nous permettre de construire
le nom de chaque fichier
if i < 10
indice = int2str(i);
file_name = strcat('acc_0000',indice,'.csv');
elseif i < 100
indice = int2str(i);
file_name = strcat('acc_000',indice,'.csv');
elseif i < 1000
indice = int2str(i);
file_name = strcat('acc_00',indice,'.csv');
else
indice = int2str(i);
file_name = strcat('acc_0',indice,'.csv');
end
% fin de la construction du nom du fichier
% maintenant nous passons à l'étape de la
recupération des données
data = load(file_name);
acc_horiz = data(:,5);
acc_vert = data(:,6);
% étape du trie décroissant des valeurs
absolues des accélérations
acc_horiz = sort(abs(acc_horiz),'descend');
acc_vert = sort(abs(acc_vert),'descend');
% calcul de l'indicateur f
f_horiz(i) = mean(acc_horiz(1:5));
f_vert(i) = mean(acc_vert(1:5));
end
%sauvegarde des données
xlswrite('indicateur_horiz_roulement1.xlsx' ,
f_horiz);
xlswrite('indicateur_vert_roulement1.xlsx' , f_vert);
% axe des abscices
x = 1 : nbr_files ;
% représentation graphique
figure(1)
plot(x ,f_horiz , 'r')
xlabel('numéro du fichier')
ylabel('indicateur')
title('moyenne des accélérations
horizontales')
figure(2)
plot(x ,f_vert , 'b')
xlabel('numéro du fichier')
ylabel('indicateur')
title('moyenne des accélérations
verticales')
|