看板 Mathematica 關於我們 聯絡資訊
※ 引述《narwhalgary (獨角鯨葛瑞)》之銘言: : For[i=1,i<201,i++, : cn[i]= Maximize[f(i,r),r][[2,1,2]]; ← 希望能加速的程式碼 不知如何Compile : ...... : ] : 煩請大大們解答 萬分感激 Maximize這些Mathematica的內建函數基本上都已經Compile過了~ 你要的可能是快速的將這200的最佳化問題計算完,不過既然都要計算, 把[[2,1,2]]的部份先保留起來 以下用平行運算 f[i_, r_] := a*i*r^2 - 2 b r + c cn[i_Integer] := Minimize[f[i, r], r] DistributeDefinitions[cn, f, Range[200]]; myans=ParallelMap[cn, Range[200]] myans[[All, 2, 1, 2]] 另外,Mathematica最佳化的指令可以看查一下這個help ConstrainedOptimizationIntroduction 如果問題沒有要求解析解,NMaximize 或 NMinimize倒是不錯的選擇! -- 養花種魚數月亮賞星星 http://chungyuandye.twbbs.org -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.173.130.134
narwhalgary:喔喔喔 謝謝大大詳細的分享^^ 我會去試試看 08/06 08:51