Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

convolution numérique sous matlab



  1. #1
    snotocs

    convolution numérique sous matlab


    ------

    Bonjour à tous,

    je galere un peu pour faire un petit algorithme qui fait la convolution de deux signaux echantillonné avec matlab.

    Je part de deux signaux porte et veut faire la convolution mais je galere je connais la théorie du "bordel" mais alors la mise en pratique s'avere trop compliqué pour moi

    je vous met ici mon petit prog si quelqu'un peut m'aider :

    x=ones(1,10);
    h=ones(1,10);

    Nx=length(x);
    Nh=length(h);

    y=zeros(1,Nx+Nh);

    for i=1:Nx+Nh
    for k=1:Nh
    y(i)=y(i)+h(k)*x(i-k);

    end;
    end;
    plot(y);

    ??? Subscript indices must either be real positive integers or logicals.

    J'espere que qu'elqu'un pourras m'aider je sais pas ou si quelqu'un peut me dire ou je peu trouver de l'aide cela me serais bien util.
    merci d'avance

    -----

  2. Publicité
  3. #2
    SiNeRgY

    Re : convolution numérique sous matlab

    Hi
    Déja, y'a une erreur dans la dimension de y, il doir etre de la somme moins un
    En plus y'a deja la fonction "conv", pour plus d'aide tape 'help conv' tu sauras comment l'utiliser.

  4. #3
    snotocs

    Re : convolution numérique sous matlab

    ouais je sais qu'elle doit surement exister cette fonction mais j'aimerais faire sans.

  5. #4
    snotocs

    Re : convolution numérique sous matlab

    apres quelques heures de prise de tete j'arrive enfin a avancer mais la j'ai un dernier petit probleme mais je sais pas ou il se trouve o_O

    x=ones(1,3);
    h=ones(1,3);

    Nx=length(x);
    Nh=length(h);

    y=zeros(1,Nx+Nh-1);

    for i=1:Nx+Nh-1
    for k=1:Nh
    if (i-k)>0
    if (i-k)<=Nx
    y(i)=y(i)+h(k)*x(i-k);
    end;
    end;
    end;
    end;
    figure(1)
    plot(y,'o');

  6. A voir en vidéo sur Futura
  7. #5
    mamine1

    Re : convolution numérique sous matlab

    svp si vous a fait la solution de la convoltion sous matlab,pouvez vous me l'envoyez car je galaire grave,merci d'avence
    #######################

    Pas d'adresse email d'après la charte
    Dernière modification par Jack ; 28/03/2008 à 19h37.

  8. #6
    soft001

    Re : convolution numérique sous matlab

    Bonjour,
    C’est un peu retard mais c’est la première fois que je visite ce Forum.
    Avec le travail collectif rien n’est possible.
    Tient la solution :

    clear all
    x=[1 2 3 5];
    h=[4 5 6 7];
    conv_matlab=conv(x,h);
    Nx=length(x);
    Nh=length(h);
    min_lenght=min(Nx,Nh);
    max_lenght=max(Nx,Nh);
    mon_code=zeros(1,Nx+Nh-1);
    mon_code(1)=h(1)*x(1);
    for k=2:Nx+Nh-1
    for j=1:Nx+Nh
    if(k+1-j>0 & k+1-j<=min_lenght &j<=max_lenght)
    mon_code(k)=mon_code(k)+h(j)*x (k+1-j);
    end
    end
    end
    fprintf('Résultat de la fonction "conv"\n')
    conv_matlab
    fprintf('\nRésultat de mon code\n')
    mon_code

  9. Publicité

Discussions similaires

  1. Modulation numérique sous matlab
    Par Sahoma84 dans le forum Logiciel - Software - Open Source
    Réponses: 8
    Dernier message: 08/06/2010, 14h29
  2. simulation d'une transmission numerique sous matlab
    Par dramangirl dans le forum Électronique
    Réponses: 4
    Dernier message: 23/01/2009, 08h35
  3. Problême Modulation numérique Matlab
    Par eric2007 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 09/07/2007, 16h44
  4. [Matlab] Traitement Numérique Signal
    Par okagasama dans le forum Électronique
    Réponses: 2
    Dernier message: 12/02/2007, 01h29
  5. convolution analogique matlab
    Par rider74 dans le forum Logiciel - Software - Open Source
    Réponses: 8
    Dernier message: 10/01/2006, 12h38
Découvrez nos comparatifs produits sur l'informatique et les technologies.