Matroids Matheplanet Forum Index
Moderiert von matph
Informatik » Programmieren » python - LGS lösen unter Verwendung von Brüchen
Druckversion
Druckversion
Autor
Kein bestimmter Bereich J python - LGS lösen unter Verwendung von Brüchen
gonz
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 16.02.2013
Mitteilungen: 3568
Aus: Harz
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Themenstart: 2020-07-15 09:03


Hallo zusammen,

ich bin durch den Thread zum "Teufel-Spiel" von cramilu darauf gekommen, ein Progamm schreiben zu wollen dass unter python läuft und letztlich ein lineares Gleichungssystem löst (dessen Dimensionen im ein- bis zweistelligen Bereich liegen). Als Zugabe habe ich die Vorstellung, dass mit Brüchen gearbeitet werden soll.

Nun gibt es eine nette mitgelieferte lib für Bruchrechung ("from fractions import Fraction"), und auch eine Art Standart für so einfache Probleme der lin. Algebra (numpy), aber beides arbeitet nicht zusammen. Bzw. ich kann an die numpy Aufrufe Brüche übergeben, aber erhalte das Ergebnis immer in Form von floating point Werten.

Ich habe gelesen, dass das offenbar so ist und es wird empfohlen, halt einen solver für das LGS selber zu schreiben, wenn man Fraction benutzen möchte. Stimmt das? Oder gibt es da eine Lösung mit build-in Funktionalität, die ich übersehen habe?

(Dass es einige veröffentliche Lösungen für LGS solver gibt, ist mir klar, den würde ich auch sonst einfach fix selber schreiben, mir geht es darum, ob es etwas gibt, was einfach so mit kommt, wenn man python benutzt).

Grüße aus dem Harz
Gerhard/Gonz

 



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
DerEinfaeltige
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 11.02.2015
Mitteilungen: 2316
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.1, eingetragen 2020-07-15 10:24


Die Solver in den linalg Modulen von numpy und scipy akzeptieren keine Objektmatrizen und können daher nicht mit Fraction umgehen.


Die numpy Grundoperationen für Matrizen (np.dot etc.) funktionieren hingegen klaglos auch mit Brüchen.


-----------------
Why waste time learning when ignorance is instantaneous?
- Bill Watterson -



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
schnitzel
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 26.02.2009
Mitteilungen: 189
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.2, eingetragen 2020-07-15 12:33


Hi,

numpy ist für numerisches Rechnen. Für symbolisches Rechnen ist sympy die Standardlibrary unter python. Die ist ziemlich umfangreich und sollte alles haben was du brauchst.
Man kann auch erst Gleichungen/Funktionen symbolisch umformen und später als numpy Funktionen exportieren.
Gruß



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
gonz
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 16.02.2013
Mitteilungen: 3568
Aus: Harz
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.3, vom Themenstarter, eingetragen 2020-07-15 14:20


Danke @schnitzel, das gucke ich mir an :)

Nachtrag - und es funktioniert (natürlich). Nochmal danke, ich hatte irgendwie von der Bruchrechnung nicht auf "symbolisch" geschlossen.



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
gonz hat die Antworten auf ihre/seine Frage gesehen.
gonz hat selbst das Ok-Häkchen gesetzt.
Neues Thema [Neues Thema]  Druckversion [Druckversion]

 


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-2020 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]