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

besoin de commentaires pour un prog matlab



  1. #1
    rider74

    besoin de commentaires pour un prog matlab


    ------

    Bonjour,

    J'ai le programme suivant qui calcule le produit de convolution de deux fonctions, le problème c'est que je ne comprends pas toutes les lignes du programme et comment il marche exactement.

    function y=convol()
    close all;
    t=0:0.1i;
    x=cos(t);
    g=sin(t);
    X = length(x);
    G = length(g);
    K = X+G-1;
    y(1:K)=0;
    x(X+1:K)=0;
    for k=1:K
    for l=k-G:k-1
    if l>=0
    y(k)=y(k)+x(l+1)*g(k-l);
    axis([0 100 -10 10])
    subplot(2,1,1)
    plot(k,y(k));
    hold on
    end
    end
    end
    subplot(2,1,2)
    plot(conv(x,g))

    C'est surtout au niveau du principe de calcul que je vois pas.
    Est ce que quelqu'un peut m'aider?
    Merci d'avance


    Ps: c'est assez urgent svp

    -----

  2. Publicité
  3. #2
    ginkoTA

    Re : besoin de commentaires pour un prog matlab

    Bonjour,

    Citation Envoyé par rider74
    function y=convol()
    close all;
    t=0:0.1i;
    x=cos(t);
    g=sin(t);
    Constitution des vecteurs - initialisations
    Citation Envoyé par rider74
    X = length(x);
    G = length(g);
    K = X+G-1;
    tailles des vecteurs
    Citation Envoyé par rider74
    y(1:K)=0;
    x(X+1:K)=0;
    On complete x avec des 0 on initialise y a 0 sur K elements
    Citation Envoyé par rider74
    for k=1:K
    for l=k-G:k-1
    if l>=0
    y(k)=y(k)+x(l+1)*g(k-l);
    axis([0 100 -10 10])
    subplot(2,1,1)
    plot(k,y(k));
    hold on
    end
    end
    end
    A y qui doit contenir le produit de convolution on associe la somme correspond a la definition discrete d'un produit de convolution :
    En terme de fonction :


    En terme de suite discrete :



    ou (equivalent)



    En considerant dans la somme en i que les valeurs non definis sont nulles.

    Ce qui permet de retomber sur ta somme entre k-G et k-1

    Citation Envoyé par rider74
    subplot(2,1,2)
    plot(conv(x,g))
    surement pour comparer ? je ne connais pas conv, mais le nom semble explicite.

  4. #3
    rider74

    Re : besoin de commentaires pour un prog matlab

    conv calcule le produit de convolution de 2 fonctions

    quand je compare les deux tracés, il y a trop de points avec le 1°

    où dois je mettre le 1°plot pour que ce soit pareil?

  5. #4
    ginkoTA

    Re : besoin de commentaires pour un prog matlab

    essaye de decaler et de remplacer ta somme par
    y(k)=y(k)+x(l)*g(k-l+1);

    Dans ce cas, les bornes de ta somme interne doivent etre de k-G+1 a k.
    Je n'ai rien teste, n'ayant pas matmab sous la main, mais a premiere vue, si tu dis qu'il y a juste un decalage, ca pourrait etre ca.

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

    Re : besoin de commentaires pour un prog matlab

    en fait c'est bon j'ai trouver, je posterai dans peu de temps le prog fini pour ceux qui veulent

Discussions similaires

  1. besoin d'aide pour matlab
    Par jerome20048 dans le forum Mathématiques du supérieur
    Réponses: 7
    Dernier message: 07/11/2007, 13h05
  2. recherche prog pour analyser un son
    Par .:Spip:. dans le forum Logiciel - Software - Open Source
    Réponses: 3
    Dernier message: 05/08/2006, 08h28
  3. J'aurai besoin d'un peu d'aide pour la prog de PIC svp
    Par Aurelien62fr dans le forum Électronique
    Réponses: 4
    Dernier message: 25/04/2005, 08h41
  4. Matlab Prog
    Par Devil dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 16/11/2004, 22h56
Découvrez nos comparatifs produits sur l'informatique et les technologies.