GrAL - Die Grid Algorithms Library
GrAL ist eine quelloffene C++-Bibliothek für geometrische Datenstrukturen und Algorithmen. GrAL basiert auf generischer Programmierung, ein relativ neues Programmierparadigma, das die Entwicklung sehr allgemeiner Software erlaubt, und die datenstruktur-unabhängige Implementierung von Algorithmen unterstützt.
GrAL wird weiter gepflegt und ist unter http://gral.berti-cmm.de verfügbar.
Ziel von GrAL ist es zum einen, generische und damit universell verwendbare Software-Komponenten für geometrische Gitter und Gitter-Algorithmen zur Verfügung zu stellen, und zum anderen das Konzept der generischen Programmierung für konkrete Anwendungen im Simulationsbereich zu untersuchen und weiterzuentwickeln.
GrAL enthält u. a. folgende Komponenten:
- Datenstrukturen für verschiedene Gittertypen (Kartesisch, simplizial, allgemein, z. T. für beliebige Dimensionen)
- Octrees beliebiger Dimension
- generische Komponenten für verteilte Gitter
- Adapter für eine Anzahl herkömmlicher Bibliotheken und Datenstrukturen (z. B. VTK) und für I/O in verschiedene Formate
- Eine Vielzahl von kombinatorischen und geometrischen Algorithmen auf Gittern