IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

MATLAB Discussion :

comment tracer une courbe


Sujet :

MATLAB

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2011
    Messages : 4
    Points : 1
    Points
    1
    Par défaut comment tracer une courbe
    Bonsoir,
    je suis nouveau avec matlab et voila donc je cherche de l'aide ..a vrai dire je veux representer une fonction "g" à deux variables (x,y) de la forme :

    g = a*x*y +b*y^2 ........si y < c
    g = a*y^2 ..................si y > c

    mais j'arrive pas franchement ..je cherche a ecrire un programme matlab ( *.m) qui consiste a tracer deux formes de coubres de cette fonction de deux variables :
    1) un programme donc qui trace la courbe ( x,y,g ) , donc en trois dimenssions (3D).
    2) et tracer la courbe g en fonction de y sur deux dimenssions donc (2D) pour chaque valeurs de x : constant , c'est a dire on fixe x et on trace g =f(y). et on aura les courbes par exemple : g=f(y, x1), g=f(y,x2) ....... sur les memes axes ( g, y). pour faire des comparaisons en quelques sorte.

    je serai completement reconnaissant si quelqu'un peut m'aider ...

    je vous remercie d'avance.

    et a très bientot.

    amicalement Mor@ad.

    +

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Bonjour,

    Peux-tu nous montrer ce que tu as essayé de coder, même si c'est faux?
    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 Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2011
    Messages : 4
    Points : 1
    Points
    1
    Par défaut re salut
    Bonjour a tous , à toutes , et à vous ! ..

    oui avec plaisir , ça ne fait même pas 1 journée que j'ai commencé à utiliser MATLAB ,donc je suis un vrai débutant ! ... Si je ne dis pas que je n'ai pas encore débuté.. mais j'ai besoin du programme en urgence pour un exposé qui rentre dans le cadre de mes études, sinon voici ce que j'ai essayé de coder (et non pas si c'est faux , plutôt il est faux lol):

    avant tout voici la fonction que je vais tracer :
    f(x,y) = 0 , ................................................si x <x0 ,
    f(x,y) = g1=(K1*(x-x0)^2)/(1+(x-x0)),............si  y>y1
    f(x,y) = g2=(K2*((x-x0)*y)-y^2)/(1+(x-x0)) , ......si y<y1
    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
    % les constantes :
    K1=18;
    K2=4;
    x0=3; % valeur initiale
     
    for x =[0:30];
    y1=(x-x0)*(K1/K2); % pour chaque x on calcule la limite y1, et maintenant pour chaque x on a des fonction (f(x,y)) dont y est seule variable et la fonction dépend de y1 ( si y <y1  : f(x,y) = g2 sinon g1 ) 
     
    for y=[0:40]; % pour chaque y qui varie de 0 a 40 par exemple on a : 
    if x <x0 
        f(x,y)=0;
    elseif y <y1 
        f(x,y)= g1;
    else 
        f(x,y)=g2;
     
    plot(f(x,y));
     
    end
    end
    à peu près j'ai fait ça ...
    je tiens vraiment à ce que vous pouviez m'aider ...
    j’attends vos réponses ..
    à très bientôt
    amicalement mor@d+

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2011
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Re
    re bonjour ...
    voila je veux resumer : on a une fonction f(x,y) :

    f(x,y) = 0 ..................si x<x0, x0 : donnée (cste)
    f(x,y) = g1(x,y) ...........si y>y1,
    f(x,y) = g2(x,y) ...........si y<y1 ,

    y1 = x-x0 ,


    - pour chaque x il faut voir : si x < x0 ............Alors f(x,y) = 0 , sinon on calcule y1 .
    - et puis pour chaque y il faut voir : si y <y1 ....Alors f(x,y) = g1(x,y) , sinon f(x,y) =g2(x,y).
    --------------------------
    1)la premiere tache c'est de dessiner sur deux dimenssion : f (y) , pour chaque valeurs de x= 0,5,10 ,15,20 ,30.. plusieurs courbes , chaque courbe pour chaque x donné.
    2)la deuxieme tache c'est de dessiner sur trois dimenssions (f , x , y ).
    ____________________________

    merci d'avance .
    et a très bientot .

  5. #5
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Quelques remarques :
    • pense à indenter ton code en utilisant "ctrl a" puis "ctrl i", cela t'aurait permis de remarquer qu'il manque un end à la fin de ton code.
    • dans for x =[0:30]; les crochets et le point virgule sont inutiles.
    • Lorsque tu vas exécuter le code, MATLAB va te renvoyer des messages d'erreurs qui vont te permettre de corriger ton code (de nombreux messages sont listés dans la faq).
    • Fait l'affichage uniquement lorsque tu as calculé toutes les valeurs et non à l'intérieur de la boucle (tel quel, ton plot n'affichera qu'un seul point...)
    • Enfin, tu te doutes que matlab ne connait pas g1 et g2...
    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 Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2011
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Merci
    Citation Envoyé par magelan Voir le message
    Quelques remarques :
    • pense à indenter ton code en utilisant "ctrl a" puis "ctrl i", cela t'aurait permis de remarquer qu'il manque un end à la fin de ton code.
    • dans for x =[0:30]; les crochets et le point virgule sont inutiles.
    • Lorsque tu vas exécuter le code, MATLAB va te renvoyer des messages d'erreurs qui vont te permettre de corriger ton code (de nombreux messages sont listés dans la faq).
    • Fait l'affichage uniquement lorsque tu as calculé toutes les valeurs et non à l'intérieur de la boucle (tel quel, ton plot n'affichera qu'un seul point...)
    • Enfin, tu te doutes que matlab ne connait pas g1 et g2...
    Bonsoir ...
    je te remercie infiniment , Normalerment c'est bon j'ai eu les courbes que je cherchai ... merci encore une fois et a très bientot .

    Mor@d+

Discussions similaires

  1. TVtchart : comment tracer une courbe
    Par 25Samy dans le forum C++Builder
    Réponses: 0
    Dernier message: 15/02/2008, 08h42
  2. comment tracer une courbe sur linux en fortran 90
    Par supraconductivité dans le forum Linux
    Réponses: 2
    Dernier message: 05/02/2008, 12h01
  3. comment tracer une courbe avec gtk
    Par killer_instinct dans le forum GTK+ avec C & C++
    Réponses: 5
    Dernier message: 01/10/2007, 22h53
  4. Réponses: 7
    Dernier message: 01/04/2007, 12h30

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