類似的octave,scipy與商業數值計算軟體matlab計算能力(速度,求解問題的範圍)


用過幾個計算機代數系統比如Mathematica、Maple、Maxima、sympy,我覺得這幾個系統基本上任何一個都有比其他幾個好的地方,要想比較客觀全面的比較出誰最強比較困難,用不同的例子測試比較可能就會得到得到不同的結果。根據個人兩年多的使用經驗看,對於基本的運算這幾個都沒有什麼問題,對於複雜些的、特殊的、對速度要求高的問題Maple和Mathematica比起開源軟體來說還是有明顯優勢的(當然並不絕對,但多數情況是這樣的)。比如算積分的例子,http://zhi.hu/X3J3只說算積分這一項就較難評判出最強的一個,maple的速度比較快,mathematica往往能處理的類型更多,但速度一般會比maple慢,特別是定積分。還有,算重積分mathematica的優勢比較大

順便說一下,網上一般對maxima的評價很高,但是我自己用了一段時間卻不斷發現bug,而且有的反饋了到下一版還是沒改。。。比如(實際的例子更複雜些,下面的只是簡化抽象版,即使你declare了type也沒用)

assume(x &>= y, y &>= z, z &>= x)$ is( x = z );ratsimp( sqrt(1/z) - 1/sqrt(z) ); is(sqrt(1/x)=1/sqrt(x));sqrt(%e^z)-%e^(z/2);

sqrt(%e^(6*%i));

log(%e^z);log(%e^(10*%i));ratsimp((x*y)^(1/n)-x^(1/n)*y^(1/n));integrate( sqrt(x^2), x );

solve([x^2+y^2=1, (x-3)^2+(y-2)^2=9],[x,y]);


推薦閱讀:
相关文章