2017-02-05 36 views
0

說我有一個大的系統方程,其中獨立方程的大型非線性系統:依次求解還是堆積?

A_i = f(B_i) 
B_i = g(A_i) 

,解決了許多不同的i。現在,這是一個只與成對相關的方程組。已證明algorythm對於解決這個問題最爲穩定。

現在,我可以獨立解決這些問題(即循環使用i許多scipy.optimize.root,或將它們堆疊在一起並同時解決)。我不確定哪一個會是最快的,而且一般都很難知道。我有支持和反對以下參數:

  • 的algorythm最初數值接近在所提供的猜測雅克比,增加維成倍增加了查找雅可比的時間(說話干犯堆積)
  • 一旦發現雅可比矩陣,大部分更新是線性矩陣代數,因此如果疊加,應該更快。

這有道理嗎?在這種情況下,我的結論是「如果解決它需要很長時間(錯誤的猜測或不規則的函數),堆疊它們,如果它很快,不堆疊」。

回答

1

我不知道我是否理解正確;當你說他們是成對依賴的時,你的意思是整個系統可以在一個小的2x2系統中分解?如果是這樣,你肯定應該選擇解決更小的系統。如果不是,你能提供一些方程嗎?