.solve
Die Funktion Ode.solve(f, z, T) erwartet folgende (verpflichtende) Argumente:
Argument | Datentyp | Hinweis |
f | Funktion | - |
z | Datenfeld | Anfangswert als Vektor |
T | Zahl | positiv |
Die Funktion löst die gewöhnliche Differentialgleichung f mit dem Anfangswert z bis zur Zeit T. Wie genau die Funktion f zu definieren ist, kann den folgenden Beispielen entnommen werden. Zurückgegeben wird ein Datenfeld bestehend aus den einzelnen Zeitreihen der Lösung.
Zudem können folgende Optionen verwendet werden:
Variable | Datentyp | Hinweis | Default-Wert |
method | Zeichenkette | - | adaptive54 |
step_size | Zahl | positiv | |
accuracy | Zahl | positiv |
Mittels method kann explizit das Lösungsverfahren definiert werden. Folgende Möglichkeiten stehen zur Verfügung:
euler | Euler-Verfahren, Konsistenzordnung 1 |
midpoint | Mittelpunkt-Regel, Konsistenzordnung 2 |
trapezoid | Trapez-Regel, Konsistenzordnung 2 |
heun | Heun-Verfahren, Konsistenzordnung 3 |
simpson | Simpson-Regel, Konsistenzordnung 3 |
runge | Runge-Regel, Konsistenzordnung 4 |
adaptive32 | Adaptive Schrittweitensteuerung, Konsistenzordnung 3(2) |
adaptive43 | Adaptive Schrittweitensteuerung, Konsistenzordnung 4(3) |
adaptive54 | Adaptive Schrittweitensteuerung, Konsistenzordnung 5(4) |
Bei einem Verfahren mit fester Schrittweite kann diese dank der Option step_size explizit definiert werden. Bei einem adaptiven Verfahren kann die gewünschte Lösungsgenauigkeit mit der Option accuracy definiert werden.