我正在尋找一個好的庫,它將在Python中集成剛性ODE。問題是,scipy的odeint給我提供了很好的解決方案有時候是,但是初始條件稍有變化就會導致它掉下來並放棄。 MATLAB的僵硬求解器(ode15s和ode23s)很快樂地解決了同樣的問題,但我無法使用它(即使是從Python開始,因爲沒有一個用於MATLAB C API的Python綁定實現了回調函數,而且我需要傳遞一個函數到ODE求解器)。我正在嘗試PyGSL,但它非常複雜。任何建議將不勝感激。將剛性ODE與Python集成
編輯:我與PyGSL的具體問題是選擇正確的步驟功能。其中有幾個,但沒有直接類似於ode15s或ode23s(bdf公式和修改的Rosenbrock如果有意義的話)。那麼選擇僵硬系統有什麼好的步驟功能?爲了確保它達到穩定狀態,我必須解決這個系統很長時間,GSL解算器要麼選擇一個微小的時間步長,要麼選擇一個太大的時間步長。
我想用PyGSL來幫助你。我從來沒有用過它,但我有GSL的經驗。我只是看了pygsl(odeiv.py)中提供的示例,它看起來與C中的幾乎相同。您是否認爲PyGSL由於python接口或GSL本身而非常複雜? – YuppieNetworking 2010-01-18 20:04:09
好吧,可怕的複雜也許是多餘的:)。它比MATLAB或scipy的複雜度要高出一個數量級。爲了澄清,python接口與C接口幾乎相同,所以它的庫本身很複雜。另外,PyGSL不會記錄odeiv,所以我必須使用C文檔來找出在Python中要做什麼。不好玩。 – 2010-01-18 20:07:14
編輯該問題。 – 2010-01-18 20:09:29