Re: [問題] 如何加速FindRoot運算速度?

作者: chungyuandye (養花種魚數月亮賞星星)   2013-01-31 11:21:02
※ 引述《suinegoast (想不到暱稱)》之銘言:
: 小弟在研究遇到了一些技術性的瓶頸
: 指令FindRoot求解1200條方程式耗時25秒
: 使用Do迴圈執行60000次上述事情
: 估計費時17天8小時40分鐘
: 請問版上高手是否知道更省時的辦法呢?感激不盡!
Exp[x - a] == y, y^2 == x+b
data = Flatten[Table[{a, b}, {a, 1, 2, 0.1}, {b, 0, 1, 0.1}], 1];
(* 平行運算 *)
ParallelMap[
FindRoot[{Exp[x - #[[1]]] == y,
y^2 == x + #[[2]]}, {{x, 1}, {y, 1}}] &, data]
如果有Lightweight Grid,記得安裝打開,整個實驗室的電腦一起算。
作者: Frobenius (▽.(▽×▽φ)=0)   2013-02-04 02:33:00
複製以上程式碼時,請從第二行"data = " 開始到 "data]"Edit → Preferences → Parallel → Lightweight Gridhttp://www.wolfram.com/lightweight-grid-manager/http://tinyurl.com/anah8ofhttp://tinyurl.com/b9ynwq5

Links booklink

Contact Us: admin [ a t ] ucptt.com