Jai recherché une fonction qui maide à obtenir la matrice adjointe oune donnée, jai trouvé que vous pouvez obtenir les cofacteurs dune matrice mais seulement en utilisant le package « Combinatorica », que je ne pouvais pas obtenir.
Si vous connaissez une commande ou si vous connaissez des moyens efficaces de créer une fonction qui fait cela, veuillez maider.
Commentaires
Réponse
Ceci est juste pour obtenir une réponse enregistrée donc la question peut être retiré de la liste des non-réponses.
Ce qui suit est tiré dun exemple donné dans la section Application de la documentation pour Minors
.
Définit ladjoint dune matrice:
adj[m_] := Map[Reverse, Minors[Transpose[m], Length[m] - 1], {0, 1}] * Table[(-1)^(i + j), {i, Length[m]}, {j, Length[m]}]
Commentaires
- Bravo . Mais vous ' vous avez tort: la question nest supprimée de la pile sans réponse quaprès avoir voté . Attendez … maintenant vous ' avez raison 🙂
- Je me rends compte quil y a un risque, mais généralement, quelquun est prêt prendre lappât 🙂
- Nous ' sommes tous pour le représentant ici 🙂
- @belisarius. Représentant? Quel représentant? Cest un travail pro bono (CW).
- Cétait la raison de mon smiley!
Réponse
Voici une réponse plus simple:
adj[m_] := Inverse[m] Det[m]
Commentaires
- Bien joué. $ \ phantom {} $
- Cela ne fonctionne que pour les matrices carrées. Le adjoint classique (également appelé ladjugat) peut être défini pour des matrices de nimporte quelle dimension, et la réponse ci-dessus par @m_goldberg est la bonne façon de le faire pour non -matrices carrées.
- Et ne fonctionne que si linverse existe.
- @MichaelSeifert La réponse acceptée fonctionne-t-elle pour vous sur des matrices non carrées? Cela ne ' t pour moi. Je pense que ' est parce que les termes {i, length [m]} et {j, length [m]} finissent par former un tableau carré.
Minors[]
, sous " Applications "