Funktionen > Lösen und Optimieren > Beispiel: Lösen eines Anfangswertproblems für Differentialgleichungen erster Ordnung
Beispiel: Lösen eines Anfangswertproblems für Differentialgleichungen erster Ordnung
Lösen Sie eine gewöhnliche Differentialgleichung der Form:
1. Geben Sie Daten für das Anfangswertproblem ein.
2. Geben Sie die gewünschten Lösungsparameter ein – Endpunkt des Lösungsintervalls, dann Anzahl der Lösungswerte für [t0, t1].
Odesolve
Lösen Sie die Differentialgleichung mithilfe eines Lösungsblocks und der Funktion odesolve.
1. Definieren Sie die Ableitung von y in einem Lösungsblock.
2. Plotten Sie y bezogen auf z.
3. Verwenden Sie die odesolve-Lösung im Lösungsblock parametrisch.
Die Ausgabe fy(k) ist eine Funktion einer Funktion. Daher müssen Sie den Wert des Parameters definieren, für den Sie die Lösungsfunktion erhalten möchten.
4. Weisen Sie das Ergebnis einem gewöhnlichen Funktionsnamen ohne unabhängige Variable t zu.
5. Stellen Sie die beiden Kurven grafisch dar.
Adams, rkfixed, Rkadapt, Bulstoer und Radau
Eine weitere Möglichkeit zum Lösen einer Differentialgleichung besteht in der Verwendung des GDG-Lösers Adams.
1. Definieren Sie die Parameter für den Löser – Vektor der ersten Lösungswerte und die Ableitungsfunktion.
Das zweite Argument der Ableitungsfunktion muss ein Vektor der unbekannten Funktionswerte sein.
2. Werten Sie die Matrix Adams aus.
Die Funktionen rkfixed, Rkadapt, Bulstoer bzw. Radau können hier ebenfalls verwendet werden.
3. Plotten Sie die Werte der Lösungsfunktion Y bezogen auf die Werte der unabhängigen Variablen T.
Die Ergebnisse von odesolve sind nur eine interpolierte Variante der Ergebnisse von einzeiligen Funktionslösern. Die Lösungsblock-Variante ermöglicht lediglich eine natürlichere Notation des Problems, während die von odesolvezurückgegebene Funktion die Interpolation derselben Tabelle darstellt, die auch vom einzeiligen Löser ausgegeben wird.