Fachbereich 6 – Mathematik
Prof. Dr. Hartmut Ring
 

Pfeil  Uni Siegen
Pfeil  FB 6 - Mathematik
Pfeil  Homepage Ring




Diese Version ist veraltet!
Zur aktuellen Version



mathGUIde fördert die Freude am kreativen mathematischen Experimentieren




Tooltips geben Auskunft über die Parameter und die Bedeutung von Funktionen und Methoden.




Vorhandene Funktionen und Methoden können komfortabel aus Listenboxen ausgewählt werden.




mathGUIde

  • fördert die Freude am kreativen mathematischen Experimentieren,
  • hilft bei der Kontrolle des Verständnisses mathematischer Algorithmen durch die Möglichkeit direkter Implementierung ohne technischen Ballast,
  • ist Freeware und wird mit allen Quellen verbreitet,
  • baut auf der modernen objektorientierten Skriptsprache Python auf und ist daher leicht zu erlernen und zu erweitern,
  • besteht aus einem Python-Paket (mathguide.py) und einer einfach zu bedienenden grafischen Benutzeroberfläche (GUI),
  • erlaubt durch Einblick in die mitgelieferten, didaktisch optimierten Quellen das schnelle Verständnis mathematischer Algorithmen,
  • fördert das experimentelle Durchdringen des Stoffs der Lehrveranstaltung Diskrete Mathematik für Informatiker,
  • kommt mit einer Online-Referenz aller Funktionen und Klassen.
  • Bei der Implementierung der Algorithmen hat Lesbarkeit und Verständlichkeit Vorrang vor Effizienz.
  • Zur Effizienzsteigerung kann bei wichtigen Funktionen das System PARI-GP als Plugin verwendet werden.
  • mathGUIde wurde (und wird weiter) mit der portablen GUI-Klassenbibliothek Qt 3.2 (Noncommercial Edition) in C++ entwickelt und läuft auf allen üblichen Plattformen (Windows, Linux etc.).
Im Jahr 2002 habe ich pariGUIde als GUI für das Computeralgebra-System PARI-GP entwickelt. PARI-GP glänzt zwar mit hoch effizienten Implementierungen vor allem zahlentheoretischer Algorithmen. Leider genügt aber die Programmiersprache von PARI-GP modernen Anforderungen nicht. Außerdem ist die C-Implementierung so kryptisch, dass sie praktisch keine Einsicht in die Algorithmen vermittelt.
Daher habe ich 2003 das Python-Paket aladim (ALgorith Approach to DIscrete Mathematics) zur direkten Verwendung unter der Python-Shell entwickelt.
mathGUIde (in der aktuellen Version 1.0) ist das jüngste Glied dieser Kette und vereinigt die moderne Programmiersprache Python und wahlweise die effiziente PARI-GP-Implementierung unter einer intuitiv zu bedienenden grafischen Benutzerschnittstelle.
Der weitere Ausbau von mathGUIde wird unter dem Motto "small is beautiful" stehen:
So werde ich der Versuchung widerstehen, mathGUIde mit Funktionen zu überfrachten, die jeder Anwender selbst schnell schreiben kann. Stattdessen wird die Priorität auf Klarheit der Implementierung und intuitiver Benutzbarkeit liegen.

Installation

unter Windows

  • Laden Sie folgende Dateien herunter:
    1. Python 2.4.3 (10,4 MB)
    2. Das mathGUIde-Grundpaket (0,4 MB)
    3. Die Datei redist-win.zip (2,8 MB, seit mathGUIde 0.5 unverändert!)
    4. Die Datei yacas-dll.zip (0,3 MB)
  • Installieren Sie Python
  • Richten Sie einen neuen Ordner ein, in dem Sie mathGUIde installieren möchten.
  • Entpacken Sie die Datei mathGUIde-1.0-win.zip in diesen Ordner.
    Wichtig: Achten Sie darauf, dass die interne Unterverzeichnisstruktur der Zip-Datei beim Entpacken erhalten bleibt!
  • Entpacken Sie die Datei redist-win.zip entweder in Ihren neu eingerichteten mathGUIde-Ordner oder nach Windows\System32.
    Diese Datei enthält die Qt-Laufzeitbibliothek qt-mtnc321.dll sowie die Dateien msvcr71.dll und msvcp71.dll.
  • Entpacken Sie die Datei yacas-dll.zip in Ihren mathGUIde-Ordner.
  • Damit ist die Installation komplett: Starten Sie jetzt mathGUIde.exe!

unter Linux

  • Installieren Sie ggf. Python 2.4 und Qt 3.2 (oder neuer).
    Beispiel: Ubuntu. Das auf Debian basierende Ubuntu-Linux lässt sich mit einem einzigen CD-Image installieren. Alle weiteren Pakete können komfortabel über das Internet nachgeladen werden.
    • Öffnen Sie den Synaptic Package Manager (System -- Administration).
    • Aus der Gruppe Development wählen Sie die Pakete qt3-dev-tools, qt3-apps-dev und g++.
    • Aus der Gruppe Python Programming wählen Sie das Paket python2.4-dev
    • Installieren Sie die gewählten Pakete mit allen Abhängigkeiten.
  • Laden Sie die mathGUIde-Quellen herunter unde entpacken sie in ein Unterverzeichnis mathguide Ihres Home-Verzeichnisses.
  • Öffnen Sie die Qt-Projektdatei mathguide.pro und passen Sie ggf. INCLUDEPATH- und LIB an Ihr System an (unter Ubuntu-Linux ist hier nichts zu tun).
  • Wechseln Sie ins Projektverzeichnis und geben Sie in der Shell den Befehl qmake mathguide.pro ein. Damit wird ein Makefile für Ihr Projekt hergestellt.
  • Starten Sie die Übersetzung mit make.
  • Wenn alles gut geht, können Sie nun die Datei mathguide starten.

PARI-GP als Plugin verwenden

Python ist eine interpretierte Spache und daher nicht so schnell wie z. B. in C++ geschriebener Code. Außerdem hat bei der Implementierung von mathGUIde die Lesbarkeit absoluten Vorrang. Trotzdem reagiert mathGUIde in den meisten Fällen sehr schnell. Wenn Sie noch höhere Geschwindigkeit benötigen, können Sie das hoch optimierte Paket PARI-GP als Plugin verwenden. Damit werden z. B. sehr große Primzahlen fast 20 mal schneller berechnet. mathGUIde kann (unter Python) PARI-GP unsichtbar starten und über eine Pipe-Verbindung einige zahlentheoretische Funktionen delegieren.

Pari-GP unter Windows installieren

  • Richten Sie einen neuen Ordner ein, in dem Sie PARI-GP installieren möchten.
  • Laden Sie das Pari-GP-Installationsprogramm Pari-2-2-9.exe herunter und führen Sie es aus.
  • Öffnen Sie die Datei mathguide.cfg in Ihrem mathGUIde-Ordner und passen Sie die (einzige) Zeile so an, dass hinter pari= der absolute Pfad des installierten Pari-GP steht.
  • Testen Sie nun in mathGUIde den Menübefehl Optionen -- PARI-GP verwenden.

Pari-GP unter Linux installieren

Anleitung folgt demnächst!


Zuletzt geändert: 07.01.2008     © Hartmut Ring     ring@mathematik.uni-siegen.de