Benutzer-Werkzeuge

Webseiten-Werkzeuge


k19:k19.9:start

19.9 Komponente gb.gsl

Die Komponente gb.gsl zielt darauf ab, die meisten Features der GNU Scientific Library umzusetzen. Gegenwärtig fügt sie die Unterstützung für komplexe Zahlen, Vektoren, Matrizen und Polynome ein.

Die Koeffizienten der Vektoren, Matrizen und Polynome können reelle Zahlen oder komplexe Zahlen sein. Darüber hinaus ermöglicht die Komponente die Standard-Rechenoperatoren wie zum Beispiel +, -, *, /, ^, Abs() oder die Relationen = und <> für alle diese o.a. Objekte und bietet automatische Konvertierungen zwischen ihnen. Vektoren und Polynome werden transparent zu und in Arrays umgewandelt.

Hinweis


Beachten Sie, dass die Komponente gb.gsl nicht abgeschlossen ist und nur ein Teil der GSL-Bibliothek implementiert wurde. Dies gilt auch für die arithmetischen Operatoren. Momentan (Stand Gambas 3.5.2.) ist z.B. Polynomdivision noch nicht implementiert, Polynomaddition hingegen schon.

Die Komponente gb.gsl enthält die folgenden Klassen:

  • Complex (→ Kapitel 20.13)
  • GSL
  • Matrix
  • Polynomial
  • Vector

Beispiel für die Erzeugung einer Matrix und Anzeige der Elemente sowie der Determinante:

Public Sub btnCreateMatrix_Click()
  Dim hMatrix As Matrix
  Dim aRow As Array
  Dim iCount As Integer
  Dim vDeterminante As Variant
 
  hMatrix = Matrix.Identity(5, 5, False)
' hMatrix = New Matrix(5, 5, False) ' Alternative über Constructor
 
  hMatrix.SetRow(0, [1.2, 2.0, 3.5, -4, 5])
  hMatrix.SetRow(1, [6, -7, 8, -9, 0])
  hMatrix.SetRow(2, [11, -2, 23, 4, 8])
  hMatrix.SetRow(3, [1.5, 2.6, 4, 6.3, -3])
  hMatrix.SetRow(4, [-1, -2, -3, 4, -33])
 
  Print hMatrix.ToString(True) ' Ausgabe mit Komma (Locale DE)
 
  For iCount = 0 To hMatrix.Height1
    Print hMatrix.Row(icount)
  Next ' iCount
 
  vDeterminante = hMatrix.Det()
  Print "Wert der Determinante = "; vDeterminante
 ' Print hMatrix.Det() '' Alternative
 
End ' btnCreateMatrix_Click()

Ausgabe in der Konsole:

[[1,2 2 3,5 -4 5][6 -7 8 -9 0][11 -2 23 4 8][1,5 2,6 4 6,3 -3][-1 -2 -3 4 -33]]

[1,2 2 3,5 -4 5]
[6 -7 8 -9 0]
[11 -2 23 4 8]
[1,5 2,6 4 6,3 -3]
[-1 -2 -3 4 -33]

Wert der Determinante = 21956,95

Download

Die Website verwendet zwei temporäre Session-Cookies. Diese technisch notwendigen Cookies werden gelöscht, wenn der Web-Browser geschlossen wird! Informationen zu Cookies erhalten Sie in der Datenschutzerklärung.
k19/k19.9/start.txt · Zuletzt geändert: 20.06.2016 (Externe Bearbeitung)

Seiten-Werkzeuge