GNU Scientific Library (GSL)

 

Für viele Algorithmen liegen bereits fertige und vor allem durchgetestete Lösungen vor. Anstatt einen Standardalgorithmus selbst zu entwickeln und für sie durch alle Tiefen des Fehlermachens und Softwaretestens zu schreiten ist es oft sinnvoll, sich das Leben etwas einfacher zu machen und auf eine vorhandene, bereits bewährte Lösung zu setzen. Die GNU Scientific Library, oder kurz GSL, ist eine sehr umfangreiche Codebibliothek, die sich an C- und C++-Programmierer richtet und eine Fülle an Funktionen bietet.

Die GSL ist ursprünglich unter UNIX entwickelt worden und ist für viele unixoide Plattformen verfügbar. Wenn das Gesamtpaket unter Windows (mit MinGW) in Betrieb genommen werden soll, sind hierfür einige Handgriffe erforderlich (s. Building GSL on Windows using Native Tools). Alternativ können auch Einzelroutinen aus der GSL verwendet werden. Hierzu muss man sich natürlich eine Übersicht über die aufgerufen Funktionen verschaffen und diese ebenfalls extrahieren.

Das Projekt hat seine Homepage unter https://www.gnu.org/software/gsl/. Einige Beispiele:

  • Interpolation
  • Ausgleichskurven (anfitten)
  • Zufallszahlen
  • Fast Fourier Transformation
  • Vektorrechnung
  • Statistikfunktionen
  • und vieles mehr

Man bekommt die Library unentgeltlich als Quelltext.

Es gilt übrigens das gleiche Credo wie beim Verwenden von Codebibliotheken im Allgemeinen: Ihre Benutzung ersetzt nicht das Nachdenken über die Aufgabe! Wer vorhandenen Code benutzt, ohne ihn oder mindestens seine Funktionsweise, seine Vorbedingungen und seine Schnittstelle verstanden zu haben, droht mit seinem Programmierprojekt in schweren Seegang zu geraten.