Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 6 sur 6
  1. #1
    Nouveau Membre du Club
    Inscrit en
    novembre 2011
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : novembre 2011
    Messages : 81
    Points : 29
    Points
    29

    Par défaut le résultat en présence et absence de la fonction "abs"

    Bonjour

    j'ai implémenté un petit code pour la transformée de Fourier

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    N=512; 
    Fe=16000; 
    F0=(Fe/2)-3000; 
    T=0:(1/Fe):((N-1)/Fe);
    X= sin(2*pi*F0*T);
    F=(-Fe/2):Fe/N:(Fe/2 - Fe/N);
    spectre= fftshift(fft(X, N)); 
    
    plot (F, abs(spectre));
    le programme s'exécute correctement!!

    mais le truc c'est qu'en écrivant le code j'ai oublié la fonction "abs"

    plot (F, spectre);

    ensuite très rapidement je me suis rattrapé et j'ai ajouté "abs" comme écrit dans mon code

    Cependant j'ai remarqué que les deux résultats n'ont pas la même amplitude!!

    est ce que vous pouvez m'expliquer pourquoi? et est ce que "abs" a une fonction autre que la valeur absolue de quelque chose?

  2. #2
    Modérateur

    Inscrit en
    août 2007
    Messages
    4 322
    Détails du profil
    Informations forums :
    Inscription : août 2007
    Messages : 4 322
    Points : 6 224
    Points
    6 224

    Par défaut

    Bonjour,

    Citation Envoyé par math_infomatique;
    est ce que "abs" a une fonction autre que la valeur absolue de quelque chose?
    oui (même si c'est lié). Regarde l'intitué de la fonction abs dans la doc.
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  3. #3
    Nouveau Membre du Club
    Inscrit en
    novembre 2011
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : novembre 2011
    Messages : 81
    Points : 29
    Points
    29

    Par défaut

    Bonjour,
    Citation Envoyé par magelan Voir le message
    Bonjour,


    oui (même si c'est lié). Regarde l'intitué de la fonction abs dans la doc.
    merci pour la réponse

    ouii j'ai lu et ça représente uniquement la valeur absolue d'un nombre

    voilà le lien de la documentation que j'ai lu.

  4. #4
    Nouveau Membre du Club
    Inscrit en
    novembre 2011
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : novembre 2011
    Messages : 81
    Points : 29
    Points
    29

    Par défaut

    ce qui m'a étonné est que
    plot (F, spectre) ==> présente une amplitude entre -2.5 et 2*10^-12

    par contre :
    plot (F, abs(spectre))==> 250

    d'après mes connaissances normalement la valeur 250 doit être la valeur absolue de [ -2.5 et 2*10^-12]

    n 'est ce pas??

  5. #5
    Modérateur

    Inscrit en
    août 2007
    Messages
    4 322
    Détails du profil
    Informations forums :
    Inscription : août 2007
    Messages : 4 322
    Points : 6 224
    Points
    6 224

    Par défaut

    Absolute value and complex magnitude
    La fonction fft renvoie des complexes sur lesquels on peut extraire le module (complex magnitude) et la phase.

    Si tu fait plot (F, spectre), tu devrais avoir un message d'avertissement te disant seules les parties réelles sont tracées. La fonction abs utilisent les parties réelles et imaginaires, d'ou les différences d'amplitude.
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  6. #6
    Nouveau Membre du Club
    Inscrit en
    novembre 2011
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : novembre 2011
    Messages : 81
    Points : 29
    Points
    29

    Par défaut

    Citation Envoyé par magelan Voir le message
    La fonction fft renvoie des complexes sur lesquels on peut extraire le module (complex magnitude) et la phase.

    Si tu fait plot (F, spectre), tu devrais avoir un message d'avertissement te disant seules les parties réelles sont tracées. La fonction abs utilisent les parties réelles et imaginaires, d'ou les différences d'amplitude.
    ok
    merci

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •