Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre habitué

    Homme Profil pro
    Technicien
    Inscrit en
    août 2013
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2013
    Messages : 95
    Points : 175
    Points
    175

    Par défaut Abscisse en n/T où T est une constante quelconque

    Bonjour

    Je dois tracer le spectre en amplitude d'une fonction périodique, je ne suis pas un très grand expert de Scilab, aussi je suis bloqué sur quelques points :
    - je souhaiterai que l'abscisse soit de la forme n/T avec n un entier positif et T la période du signal qui est quelconque.
    - comment faire apparaître l'amplitude de chaque abscisse sous la forme d'un baton (en gros un histogramme très fin)
    Une idée de ce que ça doit rendre pour éclairer mon questionnement :
    Nom : spectre.PNG
Affichages : 21
Taille : 11,7 Ko

    Merci beaucoup pour votre aide
    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Ingénieur R&D freelance
    Inscrit en
    novembre 2006
    Messages
    19 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur R&D freelance

    Informations forums :
    Inscription : novembre 2006
    Messages : 19 738
    Points : 53 393
    Points
    53 393

    Par défaut

    Un début de solution :

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    n = 0:0.05:15
    E = 2
    A = 400*E./((2*n+1).*n)
     
    figure
    scf()
     
    width = 3
    for k = 0:15
        loc(1,k+1) = find(n==k);
        if k==0 then
            lab(1,k+1) = msprintf("%d", k)
        else
            lab(1,k+1) = msprintf("%d/T", k)
     
            x = loc(1,k+1)
            y = A(loc(1,k+1))
            height = y
            xfrect(x,y,width,height)
            gce().background = color("gray");
     
        end
    end
     
    plot2d(A)
     
    db = gca().data_bounds 
    db($) = 300;
    gca().data_bounds = db
     
    gca().x_ticks = tlist(["ticks" "locations", "labels"], loc, lab)
    Images attachées Images attachées  
    Mes compétences :
    • conception mécanique 3D (Autodesk Fusion 360)
    • développement informatique (MATLAB, Python, C, VBA)
    • impression 3D (Ultimaker)
    • programmation de microcontrôleur (Microchip PIC et Arduino)

    « 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
    Membre habitué

    Homme Profil pro
    Technicien
    Inscrit en
    août 2013
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2013
    Messages : 95
    Points : 175
    Points
    175

    Par défaut

    Bonsoir

    Merci pour cette réponse.
    Quelques demandes d'explication : je ne comprends pas l'instruction de la boucle for pour k

    Est-il possible de également de faire le même raisonnement avec les valeurs d'ordonnées en utilisant une constante quelconque (E ici) : j'ai regardé dans ce que tu proposes mais je n'arrive pas à savoir comment tu intègres le n/T (mais comme ça apparait dans la boucle for et que je ne la comprends pas, peut-être que la réponse à ma première question me donnera la seconde) !
    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/05/2017, 11h32
  2. [CR10] Comment savoir si c'est une nouvelle page ?
    Par speed034 dans le forum SAP Crystal Reports
    Réponses: 8
    Dernier message: 23/09/2005, 19h18
  3. Module dont le nom est une variable
    Par Mr Hyde dans le forum Général Python
    Réponses: 3
    Dernier message: 29/08/2005, 11h19
  4. Directx en pur C , c'est une pure utopie?
    Par acetyle dans le forum DirectX
    Réponses: 61
    Dernier message: 07/07/2005, 16h36
  5. Réponses: 6
    Dernier message: 06/12/2004, 23h18

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