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 :

développement d'une équation mathématique


Sujet :

MATLAB

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    343
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 343
    Points : 44
    Points
    44
    Par défaut développement d'une équation mathématique
    Bonjour,

    je débute en matlab, et je me sens vraiment bloqué

    j'ai cette énoncé que je veux le développer en matlab

    j'ai commencé le code avec ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    xA=100
    yA=300
    xB=200
    yB=500
    A=[xA yA]
    B=[xB,yB]
    DAB=sqrt(((xA-xB)^2)+((yA-yB)^2))
    xO1=(xA+xB)/2
    yO1=(yA+yB)/2
    [xPe yPe]=[xO1 yO1]+Dab*[Pb -Pa]
    le problème je crois dans le dernier ligne,mais je sais pas comment le corriger

    merci

  2. #2
    Membre actif
    Homme Profil pro
    Ingénierie des systemes embarqués temps réels
    Inscrit en
    Juin 2006
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénierie des systemes embarqués temps réels
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2006
    Messages : 152
    Points : 231
    Points
    231
    Par défaut
    Salut.
    les calculs se font matricielement.
    d'arès ceque je vois tu as du faire une multiplication Matricielle au lieud'une multiplication élement parelement

    je veux dire par exemple a*.B est different de A*B

  3. #3
    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
    Salut,

    perso, je ne vois pas ton énoncé. Si c'est une image, elle ne s'affiche pas...

    ensuite, Pb et Pa ne sont pas définis et matlab est sensible à la casse, donc Dab est différent de DAB...

  4. #4
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    343
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 343
    Points : 44
    Points
    44
    Par défaut
    malheureusement que l'image de mon énoncé n'a pas pu afficher pour me comprendre bien.
    ce que je dois implémenter en matlab c'est
    (xE,yE)=(xO,yO)+|PaPb|(b, -a)
    sachant que b et a se sont les vecteurs du points b et a respectivement
    et PaPb c'est le segment ab. je dois impléménter cette equation en matlab

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    769
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 769
    Points : 726
    Points
    726
    Par défaut
    Je n'ai pas accès à ton image mais est ce que cette légende est juste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    A = Pa = [xA yA];
    B = Pb = [xB yB];
    DAB = Dab = sqrt(((xA-xB)^2)+((yA-yB)^2)); %distance entre A et B
    xO1 = (xA+xB)/2;
    yO1 = (yA+yB)/2;
    Si cette légende est juste
    L'équation que tu essaies de faire est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [xPe;yPe] = [xO1;yO1] + DAB * [Xb-Xa;Yb-Ya];
    si tu l'as décompose, le calcul est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    xPe = xO1 + DAB * (Xb-Xa);
    yPe = yO1 + DAB * (Yb-Ya);
    Plus tes notations seront claires et plus on pourra t'aider et avec du français ça aide à savoir ce que l'on fait

    Christophe

  6. #6
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    343
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 343
    Points : 44
    Points
    44
    Par défaut
    Enfin vous pouvez lire mon énoncé et j'éspére maintenant que mon problématique soit claire. quelqu'un peut ils m'aider
    Pièce jointe 53307

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    769
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 769
    Points : 726
    Points
    726
    Par défaut
    Comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Pa=[Xa;Ya];
    Pb=[Xb,Yb];
    a=Xb-Xa;
    b=Yb-Ya;
    PaPb=sqrt(a^2+b^2);
    ab=[a;b];
    [Xe;Ye]=[Xo;Yo]+PaPb*[b;-a];
    Christophe

  8. #8
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    343
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 343
    Points : 44
    Points
    44
    Par défaut
    Merci bien christophe mais j'ai un erreur dans le dernier ligne que je n'est pas pu le comprendre et le corriger "An array for multiple LHS assignment must be a vector"
    voila mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Xa=100
    Ya=300
    Xb=200
    Yb=500
    Xo=(Xa+Xb)/2
    Yo=(Ya+Yb)/2
    Pa=[Xa;Ya];
    Pb=[Xb;Yb];
    a=Xb-Xa;
    b=Yb-Ya;
    PaPb=sqrt(a^2+b^2);
    ab=[a;b];
    [Xe;Ye]=[Xo;Yo]+PaPb*[b;-a];

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    769
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 769
    Points : 726
    Points
    726
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    E=[Xo;Yo]+PaPb*[b;-a];
    Xe=E(1);
    Ye=E(2);
    Voici le code mais je pense que tu devrais commencer à comprendre ce que font ces équations...

    Christophe

    PS: essaies de mettre une erreur issue d'un code écrit sous matlab plutôt que dire voici mon énoncé, pouvez vous me traduire en langage matlab ?

  10. #10
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    343
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 343
    Points : 44
    Points
    44
    Par défaut
    Merci bien christophe


    comme je t'est dis au début je suis débutante en matlab et surtout en géomètrie. j'aime bien comprendre les lignes de codes comme vous m'avez dû au lieu de donner l'énoncé.j'ai compris les lignes de codes au début mais j'arrive pas à comprendre la ligne de code de E et sa signification mathématique. pouvez vous m'aider à le comprendre? car je vais utiliser cette ligne dans d'autre cas donc j'ai besoin de le comprendre pour savoir comment l'utiliser???????

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    769
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 769
    Points : 726
    Points
    726
    Par défaut
    Et bien, si tu es débutante en géométrie, je te souhaite bon courage car je n'ai pas tout compris mais voici ce qu'on peut en dire...

    Pour le point E l'équation que tu as est celle-ci :
    Je te propose de revenir à une légende simple (suit mon raisonnement en faisant un dessin) :

    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
    %Soit deux points A et B noté Pa et Pb
    Pa=[xA;yA];
    Pb=[xB;yB];
    %AB est le segment défini entre les points A et B
    a = [xB-xA];
    b = [yB-yA];
    c = sqrt(a^2+b^2); % distance entre les points A et B
     
    %tu as maintenant un triangle rectangle de côté a,b et c
    %soit TETA l'angle entre le segment AB de distance c et le côté de distance a
    %je suppose que tu connais comment calculer le sinus et le cosinus de cet angle TETA... Je te rappelle les équations :
     
    sin(TETA) = c/b;
    cos(TETA) = c/a;
     
    donc :
     
    b*sin(TETA) = c d'où c*b = b^2*sin(TETA)
    a*cos(TETA) = c d'où c*a = a^2*cos(TETA)
     
    %L'équation du point E peut donc s'écrire :
    E=[xO;yO]+PaPb*[b;-a];
    %mais aussi
    E=[xO;yO]+[b^2*sin(TETA);-(a^2*cos(TETA))];
    Cette dernière équation ressemble très fortement à l'équation d'un cercle centré en [xO;yO]. Je te mets un exemple pour tracer un cercle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    teta = -pi:pi/180:pi;
    x0=10;
    y0=10;
    r = 20; % rayon de 20
    x=x0+r0*cos(teta);
    y=y0+r0*sin(teta);
    plot(x,y)
    Avec çà je ne te serais plus utile et on sort très fortement de ce forum...

    Christophe

  12. #12
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    343
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 343
    Points : 44
    Points
    44
    Par défaut
    gooooooooooood

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

Discussions similaires

  1. Taille d'une équation mathématique
    Par arij25 dans le forum Mathématiques - Sciences
    Réponses: 4
    Dernier message: 06/02/2013, 15h09
  2. développer une expression mathématique
    Par khouja dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 04/08/2008, 22h32
  3. Déterminer les coefficients moyens d'une équation linéaire
    Par Oliveuh dans le forum Algorithmes et structures de données
    Réponses: 8
    Dernier message: 11/01/2005, 23h23
  4. Déterminer Algo pour une formule mathématique
    Par jekyll_omiwane dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 07/01/2005, 18h28
  5. Créer une fonction mathématique pendant l'exécution
    Par zeprogrameur dans le forum Langage
    Réponses: 5
    Dernier message: 09/07/2004, 11h36

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