0
我試圖解決next equation一個多星期:牛頓 - 拉夫森線性化?二階非線性ODE numpy的-SciPy的Python的
我必須使用牛頓迭代法得到u的近似解。我有腳本來做到這一點,但我需要「線性化」這個非線性ODE。 k1-k4不是常數。在每個網格點(x = 1-100),它們會得到一個不同的計算值。初始條件是u(0)= 0。
我試圖解決next equation一個多星期:牛頓 - 拉夫森線性化?二階非線性ODE numpy的-SciPy的Python的
我必須使用牛頓迭代法得到u的近似解。我有腳本來做到這一點,但我需要「線性化」這個非線性ODE。 k1-k4不是常數。在每個網格點(x = 1-100),它們會得到一個不同的計算值。初始條件是u(0)= 0。
這是一個家庭作業嗎?
另外,它是一個邊界值問題還是ODE?從你寫的,聽起來像是BVP。此外,您的邊界條件u(0)
是不夠的。
如果BVP,你可以只使用scikits.bvp_solver或scikits.bvp1lg它爲你做困難的部分。
如果ODE,寫問題,因爲一階系統,並使用scipy.integrate.odeint
或scipy.integrate.ode
。
關於線性化(假設這是一個BVP):在實踐中,通常是足夠來計算經由數值微分牛頓方法所需的偏導數。
首先,感謝您的回覆!對此,我真的非常感激。這是「工作」任務,而且我是新手,所以我沒有知識和經驗來解決它。其次,我不知道有關BVP,這可能是這個問題。是的,還有一個B.C.在網格點(x = 100)結束時,du/dx具有特定值,因此在x = 0和x = 100(最後一個網格點)處總共爲2 B.C。因此,我將檢查scikits.bvp_solver ...正是您的意思是「通過數值微分計算牛頓法所需的偏導數」。 ?是否有任何示例BVP可以在某處查看? – user1640255 2013-03-21 16:21:26
我的意思是,你不一定需要寫下牛頓方法工作的偏導數 - 數值微分通常也是如此。然而,bvp_solver/bvp1lg軟件包應該爲你做數值微分---你只需要給它們方程和B.Cs.有幾個例子scikits.bvp_solver [這裏](http://pythonhosted.org/scikits.bvp_solver/examples/examples.html) – 2013-03-21 22:07:30
...我不能使用scikits.bvp_solver,因爲我的DIFF方程有非恆定的參數(數組)... – user1640255 2013-03-27 18:17:39