p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Invité de passage
    Inscrit en
    octobre 2012
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : octobre 2012
    Messages : 9
    Points : 2
    Points
    2

    Par défaut Problème simple sinus

    Bonjour,

    j'aimerais savoir pourquoi lorsque j'exécute

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    time=linspace(0,10,100);s=sin(f1*2*pi.*time);subplot(2,1,1);plot(time,s)
    time=linspace(0,10,1000);s=sin(f1*2*pi.*time);subplot(2,1,2);plot(time,s)
    dans MATLAB je n'obtiens pas le même graphique ...

    En effet je compte tracer le spectre d'un signal importé avec wavread en ne connaissant que le vecteur temporel, le signal et la fréquence d’échantillonnage, alors je commence doucement par générer un sinus qui remplace le signal pour le moment, pour essayer. Sauf que ces 2 sinus n'ont pas les mêmes fréquences et ça m'embête...

    Merci d'avance

    Apeth

  2. #2
    Dut
    Dut est déconnecté
    Rédacteur/Modérateur

    Avatar de Dut
    Homme Profil pro
    Ingénieur R&D - Consultant MATLAB freelance
    Inscrit en
    novembre 2006
    Messages
    18 176
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur R&D - Consultant MATLAB freelance
    Secteur : Santé

    Informations forums :
    Inscription : novembre 2006
    Messages : 18 176
    Points : 50 546
    Points
    50 546

    Par défaut

    Je ne suis pas un spécialiste mais je dirais que comme dans cette discussion Tracé d'un sinus, cela est lié au théorème de Nyquist-Shannon

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    f1 = 10;
     
    f2 = 5*f1;
    f3 = 10*f1;
     
    time = 0:1/f2:3;
    s = sin(f1*2*pi*time);
     
    figure
     
    subplot(2,1,1);
    plot(time,s)
     
    time = 0:1/f3:3;
    s = sin(f1*2*pi*time);
     
    subplot(2,1,2);
    plot(time,s)
    Sur mon blog : Quand MATLAB et fprintf ne regardent pas dans la même direction…

    Ma page personnelle avec mes contributions MATLAB (R2011b/R2014b - Windows, Linux et Mac) et Hardware

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  3. #3
    Expert Confirmé Sénior
    Avatar de Winjerome
    Homme Profil pro
    Inscrit en
    septembre 2009
    Messages
    8 325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : septembre 2009
    Messages : 8 325
    Points : 30 478
    Points
    30 478

    Par défaut

    Bonsoir,

    C'est effectivement lié au théorème de Nyquist-Shannon. Tes deux signaux sont tracés avec des fréquences d’échantillonnage différents.
    1. Premier cas : 1/time(2) = 9.9 Hz
    2. Deuxième cas : 1/time(2) = 99 Hz

    Donc comme si je le suppose, tu as 9.9/2 < f1 < 99/2 (voire pire f1 > 99/2 ), tu vas voir deux signaux complètement différents.

    Pourquoi ? Car tu n'auras pas suffisamment d’échantillons par unité de temps pour pouvoir représenter correctement ta sinusoïde.
    Prenons f1 = 20 Hz, et effectuons un zoom sur le signal :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    f1 = 20;
     
    time1 = linspace(0,10,100); s1 = sin(f1*2*pi*time1);
    time2 = linspace(0,10,1000);s2 = sin(f1*2*pi*time2);
     
    tmax = 1; % on visualise de 0 à 1s
    hold on
    plot(time2(time2<tmax),s2(time2<tmax),'r-*')
    plot(time1(time1<tmax),s1(time1<tmax),'-p')
    Nom : sinus.png
Affichages : 25
Taille : 8,7 Ko
    Tu peux voir que le signal rouge (Fe = 99 Hz) possède 6 échantillons par période de la sinusoïde, ce qui est suffisant pour apercevoir la sinusoïde correctement ; alors qu'il faut un peu plus de 2 périodes pour avoir 2 points du signal bleu (9.9 Hz) : difficile donc de récupérer notre sinusoïde à partir de là en reliant simplement les points
    Avant de poser votre question : FAQ, Tutoriels et recherche sur le forum
    Une erreur ? Messages d'erreur et avertissements
    "Ça ne marche pas" n'apporte aucune information utile permettant de vous aider. Expliquez clairement votre problème (erreurs entières, résultat souhaité vs obtenu...).

    En essayant continuellement on finit par réussir. Donc: plus ça rate, plus on a de chance que ça marche. - Jacques Rouxel
    L'expérience, c'est le nom que chacun donne à ses erreurs - Oscar Wilde
    Retrouvez-moi en soirée sur le chat de developpez.com - Pas de question technique par MP, Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Random] problème simple
    Par yolepro dans le forum Langage
    Réponses: 11
    Dernier message: 23/10/2006, 09h51
  2. Problème simple de carte réseau
    Par Bayard dans le forum Matériel
    Réponses: 1
    Dernier message: 25/09/2006, 16h29
  3. Problème simple avec des checkbox
    Par nanor21 dans le forum Formulaires
    Réponses: 2
    Dernier message: 07/05/2006, 00h26
  4. [Javadoc]La Javadoc et un problème... simple mais paralysant
    Par lionrouge dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 09/12/2005, 00h00
  5. Problème simple d'apostrophe qui m'ennerve !
    Par beletteroi dans le forum Requêtes
    Réponses: 1
    Dernier message: 10/09/2005, 21h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo