Texte Enregistré en préambule
« Bonjour à vous qui avez la bonté de vous soumettre à un test sonore.
Ce test est réalisé pour obtenir des informations sur la localisation du son dans l’espace.
On vous demande, en vous orientant vers la lumière jaune clignotante, de noter le plus précisément possible la direction du son perçue en se référant aux numéros inscrits sur les étiquettes .
Pour cela vous vous tournerez vers la direction présumée une fois le son éteint.
Vous entendrez chaque test une première fois suivi d’une pause pour vous retourner et revenir en position initiale puis vous entendrez le test une seconde fois suivi d’une pause de 7secondes vous permettant de confirmer votre impression initiale et d’inscrire votre réponse sur la fiche test.
Vous noterez ainsi successivement toutes les positions sur la fiche devant vous.
Dans le cas où la direction vous semble imprécise, notez la référence se situant au centre de la zone d’incertitude. Si vous n’arrivez pas du tout à localiser le son , notez un point d’interrogation .
Vos commentaires sont les bienvenus, une case en bas de la feuille est prévue à cet effet.
Voici à titre d’exemple un essai.
--- essai ---
Logiquement votre sensation doit se situer entre les numéros 7 et 14.
Le test commence, à vous de jouer et merci de votre participation. »
% Visualisation des résultats des tests sous
forme de diagramme polaire
clear all
hold off
% Traitement des Données
[A]=dlmread('résultarepli30.txt','\t');
Theta=A(:,[1]);Theta=Theta/180*pi;
R=A(:,[2])+10;
L=A(:,[3])+10;
LS=A(:,[4])+10;
RS=A(:,[5])+10;
%R=10.^(R/20);
%L=10.^(L/20);
%LS=10.^(LS/20);
%RS=10.^(RS/20);
LP=polar(Theta,LS);
set(LP,'LineWidth',2,'color',[0 0 0],'Linestyle','-');
hold on
%RP=polar(Theta,L)
%RSP=polar(Theta,RS)
%LSP=polar(Theta,LS)
%set(RP,'Color',[0 1
0])
%set(LP,'Color',[1 0
0])
%set(RSP,'Color',[0
0 1])
%set(LSP,'Color',[0
0 0])
%Données théoriques
t=[0:0.01:2*pi];
RHO=128/180*pi;
A=1;B=1;D=0.05;C=340;F=108;W=2*pi*F;k=W/C;
x=(A*(1+cos(t+RHO))/2.*exp(j*W*t));
y=(B*(1+cos(t+RHO))/2.*exp(j*W*t-j*k*D*cos(t+RHO)));
% Visualisation
SO=abs(x-y)/max(abs(x-y))+0.03;
SO=20*log10(SO)+30;
%SO=polar(t,SO)
%set(SO,'Color',[0.5
0.5 0])
CO=0.5+0.5*cos(t+RHO);
CO=abs(CO)/max(abs(CO))+0.03;
CO=20*log10(CO)+30;
CO=polar(t,CO);
set(CO,'LineWidth',2,'color',[0.6 0.6 0.6],'Linestyle','-');
%set(CO,'Color',[0
0.5 0.5])
%legend
({num2str('Avant droite'),num2str('Avant gauche'),num2str('Arrière
droite'),num2str('Arrière gauche'),num2str('2nd ordre'),num2str('Cardioïde')})
legend ({num2str('Arrière'),num2str('Cardioïde')})
%Courbe de module et phase du prototype
%variables
F=[20:100:20000];
phi=pi/2;
a=1;b=0.707;c=0.707;
D1=0.08;f1=1000;
D2=0.015;f2=1000;
W=2*pi*F;
k=W/340;
t=0;
%fonctions
x=(a*(1+cos(t))/2.*exp(j*W*t));
y=(b*(1+cos(t))/2.*exp(j*W*t-j*k*D1*cos(t)));
hpf=1./(1+(2*pi*f1)./(j*W))*1./(1+(2*pi*f1)./(j*W));
z=(c*(1+cos(t))/2.*exp(j*W*t-j*k*D2*cos(t)));
lpf=1./(1+j*W/(2*pi*f2))*1./(1+j*W/(2*pi*f2));
%graphisme
figure(1)% modèle complet
semilogx(F,20*log10(abs((x-y).*lpf-(x-z).*hpf)),F,20*log10(imag((x-y).*lpf-(x-z).*hpf)),F,20*log10(real((x-y).*lpf-(x-z).*hpf)));
xlabel ('Fréquence (Hz)')
ylabel ('Amplitude (dB)')
grid on
axis manual
axis ([20 20000 -30 10])
figure(2) %partie hf
semilogx(F,20*log10(abs((x-y).*lpf)),F,20*log10(imag((x-y).*lpf)),F,20*log10(real((x-y).*lpf)))
xlabel ('Fréquence
(Hz)')
ylabel ('Amplitude
(dB)')
grid on
axis ([20 20000 -30 10])
figure(3)% partie bf
semilogx(F,20*log10(abs((x-z).*hpf)),F,20*log10(imag((x-z).*hpf)),F,20*log10(real((x-z).*hpf)))
xlabel ('Fréquence
(Hz)')
ylabel ('Amplitude
(dB)')
grid on
axis ([20 20000 -30 10])
% récupération fichier MLSSA et visualisation polaire
clear all
clf
hold off
pas=[0:5:36*5];
pasbis=[0:5:72*5];
grid on
z=load('K5mo3bis.txt');
set(gcf,'nextplot','add')
set(gca,'TickLength',[2 2])
n=0
%génération diagramme fréquence basse
for i=[1 2 4 8];
val=z(:,i);val2=fliplr(val');
c=[0 0 0 ;0 0 1;1 0 0;0 1 0];
n=n+1;
pl=polar([0:5:36*5]*pi/180,val2-max(val)+30);
axis([-30 30 -30 30]);
C=c(n,:);
set(pl,'Color',C,'linewidth',2);
hold on;
end
n=0;
%génération diagramme fréquence haute
for i=[17 34 67 134];
c=[0.5 0.5 0.5;1 0 1;1 1 0;0.1 0.9 1];
val=z(:,i)';
n=n+1;
a=ones(length(val)-1)*(-30)+max(val)';
val=[a(1,:) val] ;
pl=polar(pasbis*pi/180,val-max(val)'+30);
axis([-30 30 -30 30])
C=c(n,:);
set(pl,'Color',C,'linewidth',2);
hold on;
end
legend({num2str('125 Hz'),num2str('250 Hz'),num2str('500 Hz'),num2str('1 kHz'),num2str('2 kHz'),num2str('4 kHz'),num2str('8 kHz'),num2str('16 kHz')},0)
grid on
% calcul indice de directivité à 2000Hz
val=z(:,17);
val=val-max(val);
val=10.^(val/20);
val2=fliplr(val');
pas=[0:5:36*5];
val3=val2.^2.*sin(pas/180*pi)*0.0873;
val4=sum(val3)/2
Q=1./val4
ID=10*log10(Q)
%Simulation des courbes de directivité du
prototype
clear all
hold off
close all
% Variables
t=0;
A=1;
B=0.707;
E=0.707;
D1=0.015;f1=1000;
D2=0.08;f2=1000;
C=340;
F=100;
N=36;
S=zeros(37,169);
%z=10.^((z)/20);
%z1=max(z);
%z3=z1'*ones(length(pas),1)';
%z3=z./z3';
%z=20*log10(z3);
% Récupération fichier MLSSA Waterfall
z=load('4011bis.txt');
f=[118.37:118.37:20004.73];
pas=[36*5:-5:0];
x=f'*ones(length(pas),1)';
y=pas'*ones(length(f),1)';
figure(1)
set(figure(1),'name','normal')
%surf(x,y',z');
zb=10.^(z/20);
zc=max(zb);
zd=zc'*ones(length(pas),1)';
zd=zb./zd';
ze=20*log10(zd);
contour(x,y',ze',[12 9 6 3 0 -3 -6 -9 -12 -15 -18 -21
-24 -27 -30])
set(gca,'XScale','log','XDir','normal','YDir','reverse');
shading interp;
axis([100 20000 0 180 -30 20 ]);
rotate3d
z1=10.^(z/20);
z=z1;
N=36;
for i=[0:N];
t=(5*(i+0.04))/180*pi;
z2=z1((37-i),:) ;
for n=[1:169];
f=n*118.37;k=2*pi*f/C;
z3=z2(:,n);
%z2(:,n)=z3.*exp(-j*k*D1*cos(t)).*1./(1+(f2./(j*f))).*1./(1+(f2./(j*f)));
z5(:,n)=z3.*(1-B*exp(-j*k*D1*cos(t))).*1./(1+(f2./(j*f))).*1./(1+(f2./(j*f)));
end
%Z1((37-i),:)=z2;
Z5((37-i),:)=z5;
end
N=36;
for i=[0:N];
t=(5*(i+0.04))/180*pi;
z2=z1((37-i),:) ;
for n=[1:169];
f=n*118.37;k=2*pi*f/C;
z3=z2(:,n);
%z2(:,n)=z3.*exp(-j*k*D2*cos(t)).*1./(1+(f2./(j*f))).*1./(1+(f2./(j*f)));
%z4(:,n)=z3.*exp(-j*k*D2*cos(t));
z6(:,n)=z3.*(1-E*exp(-j*k*D2*cos(t))).*1./(1+(j*f)/(f1))*1./(1+(j*f)/(f1));
end
%Z2((37-i),:)=z2;
%Z4((37-i),:)=z4;
Z6((37-i),:)=z6;
end
figure(2)
set(figure(2),'name','complet')
surf(x,y',20*log10(abs(Z5'-Z6')));
%contour(x,y',20*log10(abs(Z5'-Z6')),[12 9 6
3 0 -3 -6 -9 -12 -15 -18 -21 -24 -27 -30])
set(gca,'