Differences between revisions 15 and 16
Revision 15 as of 2008-01-20 16:59:34
Size: 4073
Editor: schilly
Comment:
Revision 16 as of 2008-01-20 17:23:37
Size: 4062
Editor: schilly
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
== Sage ist ein Softwarepaket für Mathematik == = Sage: Softwarepaket für Mathematik =
Line 32: Line 32:

Sage: Softwarepaket für Mathematik

[:SAGE:Sage] ist eine Distribution freier Mathematiksoftware, bestehend aus zahlreichen eingebundenen Paketen und umfasst verschiedenste Themen der Mathematik. Außerdem ist es eine Schnittstelle zu bestehenden Computer Algebra Systemen und eine Python-Bibliothek zum Einbinden in andere Programme. Die Umsetzung geht auf eine Idee von ["William Stein"] und zahlreiche andere Mitwirkende aus der ganzen Welt zurück. Sage ist freie Software und ist unter den Bedingungen der GNU General Public License (GPL) verfügbar.

Webseite: http://sagemath.org

Sage beinhaltet diverse mathematische Open-Source Bibliotheken und bietet eine vereinheitlichte Schnittstelle zu ihnen an:

  • für kommutative Algebra: ["Singular"]

  • Analysis: ["Maxima"]

  • Gruppentheorie: ["GAP"]

  • Elliptische Kurven: John Cremona's ["MWRANK"] Bibliothek
  • Zahlentheorie: ["PARI"], Shoup's Zahlentheorie Bibliothek ["NTL"]

  • Grafiken: [:matplotlib:Matplotlib] (für 2D und 3D Graphiken), jmol (ein 3D Renderer)

  • Numerik:
  • Intervallarithmetik: MPRI
  • Statistik: R
  • Graphentheorie: NetworkX

Die langfristigen Hauptziele und Prinzipien von Sage sind:

  • Open-Source: Der Quellcode muss frei einsehbar sein, so dass jeder Benutzer verstehen kann, was das System wirklich tut sowie die Möglichkeit hat, das System zu verändern. So wie Mathematiker ein tieferes Verständnis eines Theorems erlangen, indem sie einen Beweis sorgfältig lesen oder zumindest überfliegen, sollten Programmbenutzer verstehen können, wie Berechnungen zustande kommen, indem sie die kommentierten Quellen lesen. Alle Software, die im Kern von Sage mit Sage verbreitet wird, muss freie Software sein und Änderungen sowie die Weiterverbreitung des Codes muss erlaubt sein.

  • Vollständigkeit: Das Angebot von Algorithmen aus allen Bereichen der computerbasierten Mathematik sowie die Vereinheitlichung aller wichtigen bereits bestehenden quelloffener mathematischer Programme. Sage soll ein vollständiges und qualitativ hochwertiges Mainstream Computer Algebra System sein.

  • Effizienz: Sage soll sehr schnell sein - vergleichbar mit oder schneller als alles andere. Dies ist sehr schwierig, da viele Systeme keine offenen Quellen bieten, Algorithmen manchmal nicht veröffentlicht sind und das Finden schneller Algorithmen häufig extrem schwierig (gemessen in Arbeitsjahren, Doktorarbeiten, Glück, etc.) ist.

  • Plattformunabhängigkeit: Sage läuft unter Linux, Mac OS X und Windows.

  • Programmierumfeld: Sage soll eine stabile Umgebung für neue mathematische Softwareprojekte bieten. Sage ist ein Software Entwicklungsmodell für die mathematische Gemeinschaft mit einer starken Betonung auf Offenheit und Zusammenarbeit.

  • Erweiterbar: Die Möglichkeit, neue Datentypen zu entwerfen, von bestehenden Datentypen zu erben und Code in anderen Programmiersprachen (z.B. C/C++), zum Teil des Systems machen zu können.
  • Benutzerfreundlich: Nutzern soll ein hohes Maß an Unterstützung geboten werden.
  • Einfach zu kompilieren: Sage soll verhältnismäßig einfach aus den Quellen - unter Linux, Mac OSX und MS Windows - übersetzbar sein. Dieses bietet mehr Flexibilität, wenn das System verändert werden soll.
  • Schnittstellen: Sage soll eine einheitliche und robuste Schnittstelle zur Funktionalität von PARI, GAP, GMP, Maxima, Singular, MWRANK und NTL zur Verfügung stellen.
  • Dokumentation: Handbuch, Tutorial, API-Referenz mit Beispielen für jede Funktion sowie ein umfangreiches "wie kann ... in Sage konstruiert werden?" Dokument.

Sage, eine Installationsanleitung und das Tutorial können von der Sage Webseite unter http://sagemath.org/ heruntergeladen werden.

{i} Für Hilfe und Fragen besuchen Sie bitte die Google groups sage-devel, sage-supprt oder sage-newbie. (!) Achtung, nur englischsprachig

Anleitung zur Installation: ["SAGE-Kurzanleitung-German"]

Kurzreferenz als Einführung in Sage: ["SAGE-Kurzreferenz-German"]

SAGE-intro-German (last edited 2014-07-25 07:31:06 by chapoton)