Matroids Matheplanet Forum Index
Moderiert von matroid mire2
Matroids Matheplanet Forum Index » Mathematische Software & Apps » Logarithmus einer Matrix
Autor
Universität/Hochschule Logarithmus einer Matrix
sulky
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 21.12.2009
Mitteilungen: 1851
  Themenstart: 2021-10-19

Hallo Zusammen, Es geht darum zu einer gegebenen Matrix $P\in \mathbb{R}_{n\times n}$ eine Matrix $Q\in \mathbb{R}_{n\times n}$ zu finden, sodass $P=e^Q$. Aus einem mathematischen Satz ist mir bekannt, dass ein solches $Q$ dann existiert wenn $P$ invertierbar ist. Ausserdem ist mir bekannt, dass $Q$ nicht zwangsweise immer eindeutig sein muss. Kennt jemand von euch ein entsprechendes tool um Matrixlogarithmus zu berechnen? Wenn ich mich richtig erinnere, so habe ich mal online ein Program gefunden um $e^Q$ berechnen zu können. Leider finde ich das Programm nicht mehr. Nun suche ich ein Program um $ln(P)$ zu berechnen. Ich wäre auch bereit für das Program zu bezahlen. Die Rechnungswege zur bestimmung von Matrixlogarithmen sind sehr umständlich und funktionieren (ausser bei diagonalisierbaren Matrizen) nur selten. Ich habe nicht einmal einen geeigneten algorithmus gefunden um den $ln(P)$ zumindest numerisch zu approximieren. Wer kennt ein solches tool, bzw. Program?


   Profil
easymathematics
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 30.12.2020
Mitteilungen: 88
  Beitrag No.1, eingetragen 2021-10-19

Schönen Abend, versuche es doch mal hiermit. :) http://reference.wolfram.com/language/ref/MatrixLog.html


   Profil
sulky
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 21.12.2009
Mitteilungen: 1851
  Beitrag No.2, vom Themenstarter, eingetragen 2021-10-19

hallo easymathematics, Vielen Dank für den Tipp. Ich habe mir nun eine 14-tägige von Wolfram|One heruntergeladen. Bestimmt eine super Sache, wenn man sich einmal ein wenig Zeit nehmen würde, sich damit vertraut zu machen. Muss mich jetzt mal ein wenig damit vertraut machen. Und werde mich eventuell nochmals melden. In meinem ersten Testlauf habe ich extrem lange Ausdrücke gefunden. 2 Nachkomastellen würden eigentlich genügen. Da gibt es bestimmt irgend eine Einstellung


   Profil
sulky
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 21.12.2009
Mitteilungen: 1851
  Beitrag No.3, vom Themenstarter, eingetragen 2021-10-19

Also nun habe ich dies erhalten. Gut zu sehen, dass das Program auch vor komplexen Einträgen nicht zurückschreckt. Weisst du auch, wie ich mir dies auf eine oder zwei dezimalstellen Runden lassen kann? https://www.matheplanet.de/matheplanet/nuke/html/uploads/b/27687_Matrixlog.png


   Profil
ligning
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 07.12.2014
Mitteilungen: 3519
Wohnort: Berlin
  Beitrag No.4, eingetragen 2021-10-19

GNU Octave (bzw. Matlab, wenn du dafür Geld übrig hast) wäre evtl. auch eine Lösung. Die Funktion logm berechnet den Matrixlogarithmus, allerdings ist das Ergebnis nicht unbedingt reell. Ich kenn mich damit nicht weiter aus, bist du dir sicher, dass es bei invertierbaren Matrizen immer einen reellen Matrixlogarithmus gibt? Siehe auch die Warnung bei deinem Beispiel: \sourceon Matlab >> logm([1 2; 3 4]) warning: logm: principal matrix logarithm is not defined for matrices with negative eigenvalues; computingnon-principal logarithm warning: called from logm at line 75 column 5 ans = -0.35044 + 2.39112i 0.92935 - 1.09376i 1.39403 - 1.64064i 1.04359 + 0.75047i \sourceoff


   Profil
sulky
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 21.12.2009
Mitteilungen: 1851
  Beitrag No.5, vom Themenstarter, eingetragen 2021-10-19

Hallo ligning, Ja, das wäre super. Ich ich denke mit Wolfram|One müsste das auch gehen. Die Rundung auf eine oder zwei Kommastellen geht doch bestimmt. Leider habe ich noch immer nicht herausgefunden wie. Es geht weniger ums Geld. Auch möglich, dass ich über die Uni kostenlos oder zu reudierten Preisen solche Software beziehen könnte. Aber gut zu wissen, dass man GNU Octave genau das machen kann, was ich suche.


   Profil
zippy
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 24.10.2018
Mitteilungen: 4270
  Beitrag No.6, eingetragen 2021-10-19

\quoteon(2021-10-19 19:22 - ligning in Beitrag No. 4) bist du dir sicher, dass es bei invertierbaren Matrizen immer einen reellen Matrixlogarithmus gibt? \quoteoff Betrachte als Gegenbeispiel die invertierbare $1\times1$-Matrix $(-1)$. [Die Antwort wurde nach Beitrag No.4 begonnen.]


   Profil
ligning
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 07.12.2014
Mitteilungen: 3519
Wohnort: Berlin
  Beitrag No.7, eingetragen 2021-10-19

Octave gibts auch im Webbrowser: https://octave-online.net/ [Die Antwort wurde nach Beitrag No.5 begonnen.]


   Profil
sulky
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 21.12.2009
Mitteilungen: 1851
  Beitrag No.8, vom Themenstarter, eingetragen 2021-10-19

Super, Jetzt kann ich Matrixlog berechnen. Vielen Dank euch allen. Noch eine Frage: Auf Wikipedia lese ich, dass wenn der Matrixlog komplexe einträge enthält, dann ist er nicht eindeutig. Kann man umgekehrt sagen, dass der Matrixlog eindeutig ist, wenn alle Einträge reel sind? Das wäre schwierig, denn bei numerischer Berechnung ist der Imaginärteil ja nur "ungefähr Null". Was kann man in diesem Falle hinsichtlich der Eindeutigkeit sagen?


   Profil
ThomasRichard
Senior Letzter Besuch: im letzten Monat
Dabei seit: 08.04.2010
Mitteilungen: 466
Wohnort: Aachen
  Beitrag No.9, eingetragen 2021-10-20

Hallo sulky, Maple kann das auch, Stichwort MatrixFunction im Paket LinearAlgebra. Falls du eine 15-Tage-Testlizenz brauchst: hier


   Profil
sulky
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 21.12.2009
Mitteilungen: 1851
  Beitrag No.10, vom Themenstarter, eingetragen 2021-10-29

Vielen Dank euch allen, Das scheint zuverlässig zu funktionieren. Weiss jemand wie das Program das macht? Gibt es irgend ein numerisches Verfahren? Weil Algebraische techniken funktionieren lediglich bei diagonalisierbaren matrizen und in der der Jordan normalform nur in wenigen Fällen. Der Computer verwendet doch bestimmt einen Algorithmus.


   Profil
rlk
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 16.03.2007
Mitteilungen: 11567
Wohnort: Wien
  Beitrag No.11, eingetragen 2021-10-29

Hallo sulky, ein Klick auf logm im Quelltextbereich in Beitrag No. 4 öffnet die Beschreibung dieser Funktion https://de.mathworks.com/help/matlab/ref/logm.html dort findest Du Quellenangaben zu den verwendeten Algorithmen. Servus, Roland


   Profil
sulky
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 21.12.2009
Mitteilungen: 1851
  Beitrag No.12, vom Themenstarter, eingetragen 2022-02-17

Hallo Zusammen, Ich habe nochmals eine Frage zum Matrixlogarithmus. An unzähligen stellen im INternet lese ich, dass $A\in\mathbb{R}^{n\times n}$ genau dann einen Logarithmus besitzt, wenn $A$ invertierbar ist. Wenn die Eigenwerte von $A$ alle samt nicht reel,negativ sind, dann ist der Log sogar eindeutig. Ich habe überall nach dem Beweis dieses Satzes gesucht. Wer weiss wo ich den Beweis finden kann?


   Profil
zippy
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 24.10.2018
Mitteilungen: 4270
  Beitrag No.13, eingetragen 2022-02-17

\quoteon(2022-02-17 11:24 - sulky in Beitrag No. 12) An unzähligen stellen im INternet lese ich, dass $A\in\mathbb{R}^{n\times n}$ genau dann einen Logarithmus besitzt, wenn $A$ invertierbar ist. \quoteoff Die Richtung "$A$ besitzt einen Logarithmus $\implies$ $A$ ist regulär" ist klar, denn $A=\exp(X)$ hat offenbar die Inverse $A^{-1}=\exp(-X)$. Die umgekehrte Richtung findest du z.B. hier auf Seite 22. Der dortige Verweis "Gantmacher, 1959" bezieht sich auf das Buch The Theory of Matrices, wo der Beweis auf Seite 239 ff. zu finden ist. \quoteon(2022-02-17 11:24 - sulky in Beitrag No. 12) Wenn die Eigenwerte von $A$ alle samt nicht reel,negativ sind, dann ist der Log sogar eindeutig. \quoteoff Diese Formulierung stimmt so nicht. Schau dir in dem verlinkten Foliensatz die Seite 26 an. \quoteon(2022-02-17 11:24 - sulky in Beitrag No. 12) Ich habe überall nach dem Beweis dieses Satzes gesucht. \quoteoff Der oben verlinkte Foliensatz ist die vierte Fundstelle einr Google-Suche nach den Stichworten "matrix logarithm".


   Profil
sulky
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 21.12.2009
Mitteilungen: 1851
  Beitrag No.14, vom Themenstarter, eingetragen 2022-02-18

Hallo Zippy, Vielen Dank, ja da stehts. Nun brauche ich ein wenig Zeit um dies verstehen zu können. Aber was verstehe ich jetzt wieder falsch? Der Satz (weiter unten) habe ich so von Wikipedia kopiert. Sei $A= [-2] \in \mathbb{R}^{1\times 1}$ eine $1\times 1$ Matrix. dann ist doch $A^{-1}=[-\frac{1}{2}]$, also existiert ein Matrixlogarithmus $lnM(A)$, aber $\ln(-1)$ liegt weder in $\mathbb{R}$ noch in $\mathbb{C}$. Wo liege ich hier falsch? Eine Matrix hat einen Logarithmus genau dann, wenn sie invertierbar ist. Dieser Logarithmus kann eine nicht-reelle Matrix sein, selbst wenn alle Einträge in der Matrix reelle Zahlen sind. In diesem Fall ist der Logarithmus nicht eindeutig.


   Profil
zippy
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 24.10.2018
Mitteilungen: 4270
  Beitrag No.15, eingetragen 2022-02-18

\quoteon(2022-02-18 08:49 - sulky in Beitrag No. 14) Aber was verstehe ich jetzt wieder falsch? \quoteoff Der Logarithmus einer Matrix ist nie eindeutig. Mit den Bezeichnungen des Foliensatzes: Für bestimmte Matrizen verschwindet zwar die Möglichkeit, mit der Matrix $U$ herumzuspielen, aber die $j_k\in\mathbb Z$ bleiben frei wählbar. Um diese Zahlen festzulegen, muss man sich auf den Hauptwert des Logarithmus beschränken. \quoteon(2022-02-18 08:49 - sulky in Beitrag No. 14) aber $\ln(-1)$ liegt weder in $\mathbb{R}$ noch in $\mathbb{C}$. Wo liege ich hier falsch? \quoteoff Es ist $\ln(-1)=i\pi\in\mathbb C$.


   Profil
hyperG
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.02.2017
Mitteilungen: 1923
  Beitrag No.16, eingetragen 2022-02-18

\quoteon(2021-10-19 19:32 - sulky in Beitrag No. 5) ... Die Rundung auf eine oder zwei Kommastellen geht doch bestimmt. Leider habe ich noch immer nicht herausgefunden wie. ... \quoteoff N[..., Genauigkeit] wandelt Ergebnisse in Numerischen Wert: https://matheplanet.com/matheplanet/nuke/html/uploads/b/47407_MatrixLog.PNG Grüße Gerd


   Profil
sulky
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 21.12.2009
Mitteilungen: 1851
  Beitrag No.17, vom Themenstarter, eingetragen 2022-06-21

Hallo zusammen, ich brauch nochmals Hilfe. Aus der Quelle, welche in Beitrag 13 empfohlen wurde: https://www.matheplanet.de/matheplanet/nuke/html/uploads/b/27687_matlog.png Betrachten wir die Matrix $[1] \in \mathbb{C}^{1\times 1}$. Der einzige Eigenwert von [1] ist offensichtlich $1$. Dennoch ist $[2\pi i k]\in \mathbb{C}^{1\times 1}$, $k\in \mathbb{Z}$ eine unendlich grosse Menge von Matrzen, sodass $e^{[2\pi i k]}=[1]$ Wo mache ich den Überlegungsfehler? Liegt es an meinem beschränken Englisch? Ist mit "Principal logarithmus etwas anderes gemeint als ich meine? was bedeutet $Im(\lambda(X))$?


   Profil
zippy
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 24.10.2018
Mitteilungen: 4270
  Beitrag No.18, eingetragen 2022-06-21

\quoteon(2022-06-21 11:41 - sulky in Beitrag No. 17) Ist mit "Principal logarithmus etwas anderes gemeint als ich meine? \quoteoff Gemeint ist hier der Hauptwert des Logarithmus, der sich aus den unendlich vielen Lösungen von $\exp(X)=A$ genau eine herauspickt, nämlich die, deren Spektrum im angegebenen Streifen liegt. Für dein Beispiel wäre $(0)$ der Hauptwert. --zippy


   Profil
sulky
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 21.12.2009
Mitteilungen: 1851
  Beitrag No.19, vom Themenstarter, eingetragen 2022-06-21

Hallo Zippy, Vielen Dank für die schnelle Antwort. Ich glaube es nun zu verstehen. Ist gemeint, dass jener Matrixlogarithmus, dessen Eigenwerte in $(-\pi,\pi)$ liegen existiert und eindeutig ist? Stimmt das so?


   Profil
sulky hat die Antworten auf ihre/seine Frage gesehen.

Wechsel in ein anderes Forum:
 Suchen    
 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2023 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]