CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • Black Friday
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS
Forum
  • Accueil
  • Actus
  • Tests
  • Vidéos
  • Images
  • Soluces
  • Forum

Sujet : Script TP Matlab

DébutPage précedente
12
Page suivanteFin
Kriegor Kriegor
MP
Niveau 11
09 décembre 2008 à 17:51:08

Prière de laisser ce message jusqu'à demain 12H, c'est pour un exam :cool:

TP3

load speech.mat

whos

plot(speech)

xlabel('time(seconds)')

taille_bloc=512;

jolitaille=size(speech)-rem(size(speech),taille_bl
oc);

new_speech=speech(1:jolitaille);

figure

plot(new_speech)

nbre_bloc=jolitaille(1)/512;

twodinew_speech=reshape(new_speech,taille_bloc,nbr
e_bloc);

dt=1/22050;

energy=sum(twodinew_speech.*twodinew_speech*dt);

puissance=(1/sum(nbre_bloc))*sum(twodinew_speech.*
twodinew_speech);

RMS=mean(twodinew_speech);

whos

figure(2)

x=1:taille_bloc:jolitaille(1);

plot(x,energy,'r+')

hold on

plot(new_speech)

eseuil=0.0002;

energy_out=(energy>eseuil);

figure

plot(x,energy_out,'r')

hold on

plot(new_speech)

Kriegor Kriegor
MP
Niveau 11
09 décembre 2008 à 17:52:28

TP4

Fonction APC
function [A,phi]=APC(s,t,fo)

r=exp(2*pi*j*fo.*t);

dur=max(t)-min(t)

Te=(dur)./(size(t,2)-1)

PS=sum(s.*conj(r).*Te);

A=(2/dur).*abs(PS);

phi=angle(PS);

Fonction APFC
function [A,phi,fo]=APFC(s,t)

N=size(t,2);

dur=max(t)-min(t);

Te=(dur)./(N-1);

for k=1 : floor(N/2);

fk=k/dur;

r=exp(2*pi*j*fk*t);

PS(k)=(1/N)*sum(s.*conj(r));

end

[PS_max,kmax]=max(PS);

A=2*abs(PS_max)

phi=angle(PS_max)

fo=kmax/dur

Kriegor Kriegor
MP
Niveau 11
09 décembre 2008 à 17:54:51

TP4

type de script

%exercice IV-2

%a)

t=0:0.02:0.998;

A=1.3;

fo=5;

phi=2.8;

s=A*cos(2*pi*fo.*t+phi);

%On a défini le vecteur signal, le vecteur support temporel et

%la fréquence fo pour les introduire dans notre fonction APC.

[Aest,phiest]=APC(s,t,fo)

plot(t,s)

hold on

sest=Aest*cos(2*pi*fo.*t+phiest);

plot(t,sest,'rx--')

%tracé de s en fonction de t superposé à notre fonction sinusoïdale

%reconstituée

%erreur relative :

%sur l'amplitude

errampli=abs((A-Aest4)/A)*100

%vitesse de l'objet

v=1450

fe=1000

fr=fest6

vO=v*(1-(fe/fr))

Kriegor Kriegor
MP
Niveau 11
09 décembre 2008 à 17:56:03

TP5

function [y]=sciencef(t,k,To)

fo=1/To;

phi=0;

x=cos(2*pi*fo*t-phi)+2*sin(2*pi*fo*t-phi).*sin(2*p
i*fo*t-phi);

y=x.*exp(-j*2*pi*(k/To)*t);

script

To=1/fo;

k=-2:2;

Xk=(1/To)*quad8('sciencef',-To/2,To/2,[],[],k(5),T
o)

Kriegor Kriegor
MP
Niveau 11
09 décembre 2008 à 17:57:03

TP7

f1=1;

N=64; %On prend N égale à une puissance de 2 ce qui donne de meilleurs résultats

T1=1/f1;

To=1*T1;

m=To/T1;

fech=N/To;

tech=1/fech;

t=0:tech:(N-1)*tech;

s1=cos(2*pi*f1*t);

subplot(3,2,1)

plot(t,s1,'black')

TFS1=fft(s1)/N; %vecteur de N valeur indicé de 1 à N

% Les coefficients positifs se trouvent avant N/2 et les négatifs après

B=FFTshift(TFS1); % Pour réorganiser ce vecteur, on utilise la fonction FFTshift

% qui va "déplier" la deuxième partie du vecteur pour la mettre avant la première.

% Mais FFTshift renvoit encore un vecteur dont les valeurs des indices vont toujours de 1 à N.

support=-N/2:1:(N/2-1); % Pour tracer finalement nos coefficients, il faut se servir d'un support k

% variant de -N/2 à N/2-1 par pas de 1

% Puis on trace les différents graphes :

subplot(3,2,3)

plot(support,real(B))

subplot(3,2,4)

plot(support,imag(B),'rx--')

subplot(3,2,5)

plot(support,abs(B),'g')

subplot(3,2,6)

plot(support,angle(B),'y')

Kriegor Kriegor
MP
Niveau 11
09 décembre 2008 à 17:59:27

TP8

function [r]=core(x,y)

buf=y>99999999999999999999999;

%autre possibilité : buf=zeros(1,length(y))

x2=[x,buf];

buf_index=2:length(y);

for i=1:length(x2)

buf=[buf(buf_index),x2(i)];

r(i)=sum(buf.*y);

end

script

n=60;

b=15;

a=10;

y1=zeros(1,n);

for i=1:n;

if ((i>(b-a/2))&&(i<(b+a/2)));

y1(i)=1;

end

end
nrj1=sum(y1.*y1)

subplot(3,2,2)

stem(core(y1,y1))

max1=max(core(y1,y1))

%On remarque que les maximums de l'autocorrélation correspondent aux valeurs

%calculées des énergies

avec signal quelconque :
eseuil=nrj/2;

signal2=(core(radar_pulse,radar_received)>eseuil);

figure(6)

plot(signal2,'r')

hold on

plot(core(radar_pulse,radar_received))

val=sum(core(radar_pulse,radar_noise)>eseuil)
etc...

Kriegor Kriegor
MP
Niveau 11
09 décembre 2008 à 18:02:18

Voilà merci. Désolé de polluer ce forum, même s'il n'est plus trop fréquenté. Je ne savais pas trop quoi choisir d'autre et je sais que je ne l'oublierai pas demain matin quand je me connecterai pour récupérer ces informations au combien précieuse durant mon exam. Enfin bref, vous me comprenez! ^^
J'aime assez à l'idée que ce jeu va m'aider à récupérer une bonne note!! ^^

Kriegor Kriegor
MP
Niveau 11
09 décembre 2008 à 18:10:30

Un petit dernier pour la route :

TP2
boucle for :

i=1
for DT=0.25:0.25:10
intervalle(i)=DT
energy(i)=quad8('carre',-DT/2,DT/2,[],[],a)
i=i+1
end
plot(intervalle,energy)
energynum=(sum(carre(t,a).*0,1)

histo:
hist(clari,50)
[N,X]=hist(clari.*clari,50)
Puissance=1/sum(N).*sum(X.*N)

Voilà merci encore.

Kriegor Kriegor
MP
Niveau 11
10 décembre 2008 à 11:21:33

C'est bon, un 20 en perspective.
Encore désolé et merci. Vous pouvez tout raser.

arnaud13330 arnaud13330
MP
Niveau 1
15 décembre 2010 à 22:01:14

function [A,phi]=apc(fo,s,t)
r=exp(j*2*pi*fo*t);
Te=(max(t)-min(t))/(length(t)-1);
comp=sum(s.*conj(r)*Te);
mod=abs(comp);
A=2/(max(t)-min(t))*mod;
phi=angle(comp);
end

function [Aest,Phiest,fest]=apfc(s,t)
L=length(t); % L= Longeur de t
D=(t(1,L)-t(1,1));
N=L-1;
Te=D/N;
k=1;
for k=1:N/2
fk=k/D;
r=exp(2*pi*j*fk*t);
SR(k)=(1/N)*sum(s.*conj(r));
k=k+1;
end
[SRkmax,kmax]=max(SR);
Aest=2*abs(SRkmax);
Phiest=angle(SRkmax);
fest=kmax/(N*Te);
subplot(2,1,2)
k=1:N/2;
fk=k/D;
stem(fk,SR(k))
xlabel('fk')
ylabel('SR(k)')
title('SR(k) en fonction de fk','color','red')
end

arnaud13330 arnaud13330
MP
Niveau 1
15 décembre 2010 à 22:06:04

function [fr,vo]=frvoc(fe,v,s_sonar,t_sonar);
L=length(t); % L= Longeur de t
D=(t(1,L)-t(1,1));
N=L-1;
Te=D/N;
k=1;
for k=1:N/2
fk=k/D;
r=exp(2*pi*j*fk*t);
SR(k)=(1/N)*sum(s.*conj(r));
k=k+1;
end
[SRkmax,kmax]=max(SR);
fr=kmax/(N*Te)
vo=v*(1-(fe/fr))

load(lab_data)
fe=1000;
v=1450;
s_sonar;
t_sonar;
plot(t_sonar, s_sonar)
[fr,vo]=frvoc(fe,v,s_sonar,t_sonar);

arnaud13330 arnaud13330
MP
Niveau 1
15 décembre 2010 à 22:10:58

N=512;
speech(length(speech):N*143)=0;
LG=size(speech);
X=reshape(speech,N,143);
E=(sum(X.^2)./N);
Z(find(E>0.0002))=1;
Z(find(E<0.0002))=0;
Subplot(2,1,2);
support=(1:512:LG);
plot(speech);
hold on;
stairs(support,Z,'r');

arnaud13330 arnaud13330
MP
Niveau 1
15 décembre 2010 à 22:12:08

%**********V-1)***********

N= 2^7;
f1=3;
T1=1;
T0=0;
ts=(T1-T0)/(N-1);
t=T0:ts:T1;
s1=1+2*sin(2*pi*f1*t);
subplot(5,1,1);
plot(t,s1);
title('signal d"origine');

S1=fft(s1)/N;
S1=fftshift(S1);
df=1/(T1-T0); % <-> fo=1/T0 intervalle en fréquence
k=-N/2:((N/2)-1);
fmax=(N/2)*df;
f=k*df;
subplot(5,1,2);
stem(f,real(S1));
title('réel');
subplot(5,1,3);
stem(f,imag(S1));
title('imaginaire');
subplot(5,1,4);
stem(f,abs(S1));
title('Module');
subplot(5,1,5);
stem(f,angle(S1).*(abs(S1)>1E-01));
title('Phase');

arnaud13330 arnaud13330
MP
Niveau 1
15 décembre 2010 à 22:24:05

6.1
close all;
clear all;
%a)
y1=[zeros(1,10) ones(1,10) zeros(1,40)];
subplot(3,1,1);
stem(y1);
E1=sum(y1.^2)
subplot(3,1,2);
n2=1:1:10;
y2=[2*n2 zeros(1,50)];
stem(y2);
E2=sum(y2.^2)
subplot(3,1,3);
y3=[zeros(1,49) ones(1,1) zeros(1,10)];
stem(y3);
E3=sum(y3.^2)

%b)
figure;
subplot(3,1,1);
correl1=corr(y1,y1);
plot(correl1);
subplot(3,1,2);
correl2=corr(y2,y2);
plot(correl2);
subplot(3,1,3);
correl3=corr(y3,y3);
plot(correl3);
Maximum1=max(correl1)
Maximum2=max(correl2)
Maximum3=max(correl3)

%On remarque que la valeur de chaque énergie est égale à la valeur max de
%chaque autocorrélation

%c)
figure;
subplot(3,1,1);
intercor1=corr(y1,y2);
plot(intercor1);
subplot(3,1,2);
intercor2=corr(y1,y3);
plot(intercor2);
subplot(3,1,3);
intercor3=corr(y2,y3);
plot(intercor3);

6.2
close all;
clear all;

load correl_data.mat

%a)
subplot(3,1,1);
plot(dsss);
title('Signal dsss');
subplot(3,1,2);
plot(cs1, '-r');
title('Signal cs1');
subplot(3,1,3);
plot(cs2);
title('Signal cs2');
Ecs1=sum(cs1.^2)
Ecs2=sum(cs2.^2)

%b)
figure;
cor1=corr(dsss,cs1); %intercorrélation entre le signal mutltiplexé et le code le plus long cs1
plot(cor1);

function r=corr(x,y)
b=length(y); % longueur de y
x=[x zeros(1,b)]; % x = x suivit d'autant de zéros que b
a=length(x); % longueur de x
buff=zeros(1,b); % initialisation du buffer
z=[];
for k=1:a % k allant de 1 à longueur de x
buff=[buff(2:end) x(k)]; % buff = buff suivit de x
r(k)=sum(y.*buff); % corrélation de y avec buff
end

arnaud13330 arnaud13330
MP
Niveau 1
15 décembre 2010 à 22:25:07

%**********V-2)***********
close all;
clear all;
%a)
T0=1;
T1=0.1;
N=2^9;
dt=T0/(N-1);
ti=-(T0/2);
tf=T0/2;
t=linspace(ti,(tf-dt),N);
s1= 2*(abs(t)<T1/2);
subplot(3,1,1);
stem(t,s1);

S1=fft(s1)/N;
S1=fftshift(S1);

df=1/T0; % <-> fo=1/T0 intervalle en fréquence
k=-N/2:((N/2)-1);

f=k*df;
subplot(3,1,2);
plot(f,abs(S1));

subplot(3,1,3);
argS1=angle(S1);
stem(f,argS1);

1986_inside 1986_inside
MP
Niveau 10
24 novembre 2012 à 23:35:32

:-)

Oscar5597 Oscar5597
MP
Niveau 10
07 décembre 2012 à 14:24:41

Le batard :rire:

Mario-SlaceII Mario-SlaceII
MP
Niveau 53
07 décembre 2012 à 14:25:20

Ca sert à quoi ce truc ? :noel:

Oscar5597 Oscar5597
MP
Niveau 10
07 décembre 2012 à 14:26:13

Une anti seche :rire:

3615-18 3615-18
MP
Niveau 10
07 décembre 2012 à 14:26:38

ça sent le cheat ici :fier:

DébutPage précedente
12
Page suivanteFin
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : Evilash08, Vortex646, Tomy-Fett, Leirok, ]Faustine[, Latios[JV], Remysangfamy
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

  • Aucun sujet à ne pas manquer
La vidéo du moment