Integrieren Sie starre ODEs in Python

Ich suche eine gute Bibliothek, die steife ODEs in Python integriert. Das Problem ist, Scipy's Odeint gibt mir gute Lösungenmanchmal, aber die geringste Änderung der Anfangsbedingungen führt dazu, dass es herunterfällt und aufgibt. Dasselbe Problem wird von MATLABs steifen Solvern (ode15s und ode23s) recht gut gelöst, aber ich kann es nicht verwenden (auch nicht von Python aus, da keine der Python-Bindungen für die MATLAB C-API Rückrufe implementieren und ich eine Funktion übergeben muss zum ODE-Löser). Ich versuche PyGSL, aber es ist schrecklich komplex. Anregungen wäre sehr dankbar.

EDIT: Das spezifische Problem, das ich mit PyGSL habe, ist die Wahl der richtigen Schrittfunktion. Es gibt mehrere davon, aber keine direkten Analoga zu ode15s oder ode23s (bdf-Formel und modifizierter Rosenbrock, wenn das Sinn macht). Was ist also eine gute Schrittfunktion für ein steifes System? Ich muss dieses System sehr lange lösen, um sicherzustellen, dass es den stationären Zustand erreicht, und die GSL-Löser wählen entweder einen winzigen Zeitschritt oder einen zu großen.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage