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

Mathématiques Discussion :

Résoudre un système d'équations linéraires


Sujet :

Mathématiques

  1. #1
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 104
    Points : 49
    Points
    49
    Par défaut Résoudre un système d'équations linéraires
    Bonjour,

    J'ai donc les deux équations suivantes (pièce jointe).
    Donc un système linéaire et une condition sur les solutions. Cela représente un système physique, donc lorsque le système est résolu, la condition sur les solution est vérifiée. De plus, celle-ci pour être utilisée dans certains cas.
    Par exemple, dans le cas 1, grâce à celle-ci, on peut trouver x après avoir trouver y et z.

    Pensez-vous qu'il soit possible d'écrire un algorithme permettant de résoudre ce système. Au début, je pensais faire avec le pivot de Gauss mais en regardant plus cette méthode, il me semble qu'elle n'est pas applicable dans mon cas, car elle ne semble pas assez générale.
    J'y réfléchis donc depuis peu mais cela me semble un peu farfelu d'essayer d'avoir un programme pour résoudre ce système de manière systématique. Sachant que comme cela part d'un problème physique, il y aura toujours des solutions.

    Qu'en pensez-vous?
    Images attachées Images attachées  

  2. #2
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    La matrice de ton système linéaire est-elle singulière?
    Jean-Marc Blanc

  3. #3
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 104
    Points : 49
    Points
    49
    Par défaut
    Cela peut arriver (cas 1) mais dans ce cas l'équation sur les solutions de l'équation permet de s'en sortir.

    J'ai regardé un peu sur le net et ai trouvé des articles parlant d'un "Huang algorithm" ou "Huang method".

    Connaissez-vous cela?

  4. #4
    Membre expérimenté
    Profil pro
    chercheur
    Inscrit en
    Avril 2004
    Messages
    830
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : chercheur

    Informations forums :
    Inscription : Avril 2004
    Messages : 830
    Points : 1 455
    Points
    1 455
    Par défaut
    Si M.V=vecteur_nul, M est singulière.
    Le problème parait mal posé.

  5. #5
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    Cela peut arriver
    Si la matrice n'est pas singulière, le problème n'admet aucune solution.
    Jean-Marc Blanc

  6. #6
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 104
    Points : 49
    Points
    49
    Par défaut
    En fait, de ce que j'ai compris, c'est si la matrice est non inversible, elle est dite singulière et donc il n'y a pas de solution unique.
    Et c'est là qu'intervient la seconde équation x^2+y^2+z^2=1.
    Par exemple, sir le cas 1, on trouve :

    B2y + B3z = 0 => y = B3z/B2
    C2y + C3z = 0 => y = C3z/C2

    Cela implique donc que y=z=0 mais on ne sait pas pour x.
    Or, x^2+y^2+z^2=1, donc x=1.

    Le système n'admettait donc pas de solution. Mais avec la seconde équation, on a une nouvelle condition qui permet de trouver la solution.

    J'aurais donc souhaité créer quelque chose gérant tout cela. Mais je ne pense pas que cela soit possible.

  7. #7
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 681
    Points
    18 681
    Par défaut
    Citation Envoyé par elglantosimpatico Voir le message
    Par exemple, sir le cas 1, on trouve :

    B2y + B3z = 0 => y = B3z/B2
    C2y + C3z = 0 => y = C3z/C2

    Cela implique donc que y=z=0 mais on ne sait pas pour x.

    euh... d'où sors-tu ton "y=z=0" ici ?
    c'est certes une solution évidente, mais rien ne te dit que ce soit la seule

    par ailleurs, il manquerait pas des "-"
    B2*y + B3*z = 0 => y = -B3*z/B2
    C2*y + C3*z = 0 => y = -C3*z/C2

    enfin, il faut sans doute distinguer les cas B2=0 B2<>0

  8. #8
    Membre expérimenté
    Profil pro
    chercheur
    Inscrit en
    Avril 2004
    Messages
    830
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : chercheur

    Informations forums :
    Inscription : Avril 2004
    Messages : 830
    Points : 1 455
    Points
    1 455
    Par défaut
    Citation Envoyé par elglantosimpatico Voir le message
    J'aurais donc souhaité créer quelque chose gérant tout cela. Mais je ne pense pas que cela soit possible.
    Quand tu auras remplacé le mot "gérer" par un autre qui signifie ce que tu veux faire, peut-être que ce sera possible ...

  9. #9
    Membre expérimenté
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Points : 1 685
    Points
    1 685
    Par défaut
    Bonsoir,

    ton problème est très simple.
    Si ta matrice est inversible, ton problème n'admet aucune solution.
    Si elle est singulière, sont solutions tous les vecteurs propres unitaires associés à la valeur propre nulle. Il y en a autant que la multiplicité de ta valeur propre nulle.

    Différents algorithmes sont possibles pour trouver les valeurs propres et les vecteurs propres d'une matrice.

    Pour commencer, tu peux lire le livre de Youssef Saad, "Numerical Methods for Large Eigenvalue Problems" :
    http://www-users.cs.umn.edu/~saad/books.html

    ou le livre suivant, plus récent et co-signé par des nombreux spécialistes du domaine :
    http://www.cs.utk.edu/~dongarra/etemplates/index.html

  10. #10
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Il y a peut-être un truc qui m'échappe.
    Il s'agit d'un système de 3 équation à 3 inconnues. Ce système admet en général une solution et une seule.
    La seconde ligne racine( ... ) sera généralement non vérifiée, sauf si, étant donné que cela représente une réalité physique, elle est toujours vérifiée.
    Pardon si j'ai dit des bêtises

  11. #11
    Membre expérimenté
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Points : 1 685
    Points
    1 685
    Par défaut
    Citation Envoyé par Pierre Dolez Voir le message
    Il s'agit d'un système de 3 équation à 3 inconnues. Ce système admet en général une solution et une seule.
    En fait, il y a trois possibilités. Si Ax=b est un système linéaire carré, alors
    1. il admet une unique solution x si et seulement si la matrice A est inversible : le système est alors dit inversible ou régulier;
    2. il admet une infinité de solutions si et seulement si A est singulière et b appartient à l'image de A : le système est alors dit consistant;
    3. il n'admet aucune solution si et seulement si A est singulière et b n'est pas dans l'image de A.

    Malgré les apparences, le problème posé dans cette discussion est non-linéaire : c'est un problème aux valeurs propres.

  12. #12
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 104
    Points : 49
    Points
    49
    Par défaut
    Citation Envoyé par gorgonite Voir le message
    euh... d'où sors-tu ton "y=z=0" ici ?
    c'est certes une solution évidente, mais rien ne te dit que ce soit la seule

    par ailleurs, il manquerait pas des "-"
    B2*y + B3*z = 0 => y = -B3*z/B2
    C2*y + C3*z = 0 => y = -C3*z/C2

    enfin, il faut sans doute distinguer les cas B2=0 B2<>0
    Tout à fait, j'ai oublié d'écrire les moins. Et vrai aussi pour y=z=0

    Citation Envoyé par Nebulix Voir le message
    Quand tu auras remplacé le mot "gérer" par un autre qui signifie ce que tu veux faire, peut-être que ce sera possible ...
    En fait, par "gerer", je voulais dire, trouver dire trouver le solutions du système comme expliqué dans mon premier post.

    Citation Envoyé par Aleph69 Voir le message
    En fait, il y a trois possibilités. Si Ax=b est un système linéaire carré, alors
    1. il admet une unique solution x si et seulement si la matrice A est inversible : le système est alors dit inversible ou régulier;
    2. il admet une infinité de solutions si et seulement si A est singulière et b appartient à l'image de A : le système est alors dit consistant;
    3. il n'admet aucune solution si et seulement si A est singulière et b n'est pas dans l'image de A.

    Malgré les apparences, le problème posé dans cette discussion est non-linéaire : c'est un problème aux valeurs propres.
    Je pense que le calcul des vecteurs propre est déjà un bon départ et résoudra une bonne partie des cas.

    Par contre, admettons que ma matrice soit la suivante :

    M=(-1,-3;-2,2)

    Ces valeurs propres sont donc -1 et 4. Deux vecteurs propres sont donc (3,2) et (1,-1). Cela est facile à faire à la main. Mais dans un programme, il n'y a pas de raison qu'il donne plus (3,2) que (0,0) par exemple. Comment feriez-vous donc pour l'obliger à trouver le bon vecteur propre (x,y).
    Soit, dans mon cas, le vecteur propre (x,y,z) qui vérifie x^2+y^2+z^2=1.

    Je suis désolé si je suis pas toujours très clair mais ce n'est déjà pas très clair pour moi.

  13. #13
    Membre expérimenté
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Points : 1 685
    Points
    1 685
    Par défaut
    Citation Envoyé par elglantosimpatico Voir le message
    Par contre, admettons que ma matrice soit la suivante :

    M=(-1,-3;-2,2)
    Votre matrice est inversible donc n'admet pas de valeur propre nulle : votre problème n'a pas de solution dans ce cas.

    Citation Envoyé par elglantosimpatico Voir le message
    Comment feriez-vous donc pour l'obliger à trouver le bon vecteur propre (x,y).
    Soit, dans mon cas, le vecteur propre (x,y,z) qui vérifie x^2+y^2+z^2=1.
    Une fois que vous connaissez des vecteurs propres, il suffit de les normaliser pour vérifier votre contrainte. En pratique, c'est ce qui est fait dans les algorithmes classiques car ils procèdent par orthonormalisation d'un espace de Krylov. Il s'agit des algorithmes d'Arnoldi et de Lanczos.

Discussions similaires

  1. Résoudre un système d'équations
    Par nahouto dans le forum Mathématiques
    Réponses: 4
    Dernier message: 12/12/2009, 17h30
  2. résoudre un système d'équation
    Par niniii dans le forum MATLAB
    Réponses: 1
    Dernier message: 03/04/2009, 03h45
  3. Réponses: 6
    Dernier message: 08/12/2008, 16h31
  4. Réponses: 7
    Dernier message: 19/05/2008, 14h24
  5. Résoudre un système d'équations différentielles
    Par mostafaziad dans le forum MATLAB
    Réponses: 7
    Dernier message: 06/07/2007, 10h18

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