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

Algorithmes et structures de données Discussion :

inversion d'une matrice, probleme algebrique


Sujet :

Algorithmes et structures de données

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 84
    Points : 45
    Points
    45
    Par défaut inversion d'une matrice, probleme algebrique
    Bonjour,

    je voudrais inverser une matrice mais je crois qu il y a une subtilite qui m echappe d'un point de vue algebrique ...
    La matrice à inverser est A
    J ecris : (minuscule = vecteur, majuscule = matrice et A(-1) = inverse de A, idem pour un vecteur )

    Ax=b, avec x inconnu et b est determine de facon quelconque
    Je fais un algorithme qui me donne x, donc normalement A(-1)=x*b(-1)
    et donc par la suite, si j ecris A(-1)*A je dois trouver la matrice identite
    Et l inverse d un vecteur est sa tranposee non ??(la j ai vraiment peur de dire une grosse c..., euh... betise pardon )

    Et le probleme que j ai est que lorsque je fais A(-1)*A je trouve pas l'identite!!!! (j en deduis qu il y a une erreur quelque part...fute quand meme )

    bon voilà, je pense qu il y a une grosse anerie dans ce que je viens d ecrire mais je ne la vois, donc je excuse pour ce post...en esperant avoir une explication...

  2. #2
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    L'inverse d'une matrice n'est pas la transposée.
    Ce n'est vrai que dans certains cas très particuliers.
    Aucune réponse à une question technique par MP.
    Ce qui vous pose problème peut poser problème à un(e) autre

    http://thebrutace.labrute.fr

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 84
    Points : 45
    Points
    45
    Par défaut
    Je ne dis pas que l inverse d'une matrice est sa transposee, loin de la.
    J ai parlede transpose uniquement pour un vecteur...nuance

  4. #4
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 638
    Points
    7 638
    Par défaut
    Citation Envoyé par le_voisin
    Et l inverse d un vecteur est sa tranposee non ??(la j ai vraiment peur de dire une grosse c..., euh... betise pardon )
    L'inverse d'un vecteur... j'ai un peu de mal à voir ce que cela représenterait...

    Rien que pour voir, regarde ce que donne un produit b(-1)*b ou b*b(-1)... si tu ne tombes pas sur la matrice identité... c'est que tu as dit une grosse c...

    Vaut mieux rester sur des algorithmes éprouvés (et approuvés!) pour inverser une matrice, style gauss-jordan (attention aux arrondis...) ou décomposition LU... (il doit y en avoir d'autres, mais je n'ai regardé que ces deux-là pour l'instant!)
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  5. #5
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    Même si tu as des bons algorithmes, ce n'est pas sûr que tu trouves exactement l'identité à cause des approximations (erreur d'arrondis) qu'il y a lors des calculs.

    En général, quand on programme ce genre de chose, rien que pour savoir si la matrice est inversible, on ne vérifie pas det A = 0 car avec les erreurs d'arrondis, c'est souvent peu probable que ça tombe sur 0 pile.
    Donc on vérifie |det A| < espilon
    Je ne répondrai à aucune question technique en privé

  6. #6
    Membre habitué Avatar de larnicebafteur
    Inscrit en
    Mai 2006
    Messages
    133
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 133
    Points : 131
    Points
    131
    Par défaut
    l'inverse d'un vecteur n'existe pas.

    Par contre, le produit d'un vecteur par son transposé est égal au carré de la norme du vecteur. Cela permet de normer le vecteur afin d'obtenir un vecteur unitaire.
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème

  7. #7
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    Citation Envoyé par le_voisin
    Je fais un algorithme qui me donne x, donc normalement A(-1)=x*b(-1)

    J'ajoute que cette notation A(-1)=x*b(-1) n'a aucun sens puisque b est un vecteur colonne (comme ça a été déjà signalé) et que si cette notation te donner x, il faudrait au moins qu'elle s'écrive x = ...

    Donc normalement, si A est inversible, x = A^(-1) . b où A est une matrice carré de taille N*N (car l'inversion n'a de sens que pour une matrice carré) et b un vecteur colonne de taille N.
    Je ne répondrai à aucune question technique en privé

  8. #8
    Membre éclairé
    Inscrit en
    Juin 2005
    Messages
    644
    Détails du profil
    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2005
    Messages : 644
    Points : 754
    Points
    754
    Par défaut
    Par contre, le produit d'un vecteur par son transposé est égal au carré de la norme du vecteur
    Ou une matrice n X n (symétrique) si on multiplie dans l'autre sens !!! La multiplication matricielle n'est commutative que dans des cas très praticuliers.

  9. #9
    Membre éprouvé Avatar de Nemerle
    Inscrit en
    Octobre 2003
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Âge : 53

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 106
    Points : 1 213
    Points
    1 213
    Par défaut
    si tu veux inverser A, tu peux par exemple effectuer un "pivot" généralisé de gauss sur la matrice 2n *n

    A In

    ou tu "colles" à droite de A la matrice diagonale In n'ayant que des 1 sur la diagonale. Ton pivot de Gauss doit te fournir à l'arrivée

    In B

    et dans ce cas B est ton inverse.
    Nemerle, mathématicopilier de bars, membre du triumvirat du CSTM, 3/4 centre

  10. #10
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 638
    Points
    7 638
    Par défaut
    Tout ça illustré sur wikipédia
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

Discussions similaires

  1. Inverse d'une matrice de Hilbert
    Par Alp dans le forum Mathématiques
    Réponses: 11
    Dernier message: 05/02/2008, 02h02
  2. Réponses: 3
    Dernier message: 21/09/2007, 16h28
  3. Inverse d'une matrice
    Par tralf dans le forum C
    Réponses: 11
    Dernier message: 11/04/2007, 17h00
  4. Inversion d'une matrice carrée d'ordre
    Par rassol3 dans le forum C
    Réponses: 2
    Dernier message: 01/12/2006, 09h40
  5. Réponses: 8
    Dernier message: 07/09/2006, 09h08

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