*概要 [#h505b21c]
-数式変形ツール
-[[参考>http://www.cc.kyoto-su.ac.jp/~mtkg/lecture/comp_A/2014/14.html]]
-[[微分方程式系参考>http://ynomura.dip.jp/archives/2008/08/maxima_1.html]], [[ode2参考>http://d.hatena.ne.jp/jurupapa/20110605/1307252423]]
-[[よくある疑問>http://www.cymric.jp/maxima/tips.html]]

*疑問 [#wc19b32e]
-=と:=と:の違いは?
-x=b+a, y=2aをいい感じに行列表記にしてくれる方法はないの?


*いろいろ詰まったサンプル [#vfcb2dee]
 /*Rotate A*/
 A : matrix([-0.0703557, 0.993238  ,-0.0923413], [ 0.996815  ,0.0665199  ,-0.043984], [ -0.0375441  ,-0.0951417 , -0.994756]);
 X:matrix([1, 0, 0],[0, cos(x), -sin(x)], [0, sin(x), cos(x)]);
 A.X
 ev(A.X, x = %pi/10)
 float(ev(A.X, x = %pi/10));
 
 quit();

*文法 [#lbfb3155]
-コメントアウトは/**/
-終端は;か$($が表示抑制)
-Maxima は大文字,小文字. を区別しない.
-C言語で言うincludeは、batch("matrix_sample.max");で可能
**行列 [#p98ca0a2]
|コマンド|機能|h
|[1,2,3]|横ベクトル|
|A[2,3] : x;|成分操作|
|matrix([1, 2, 3], [2, 4, 5])|行列。横行列を複数指定した分、縦に連結した行列|
|zeromatrix(m, n)|零行列|
|ident(n)|n次単位行列|
|columnvector([1, 2, 3])|縦行列|
|diag([1,2,3])|対角行列.load("diag");が必要|
|transpose(A)|転置|

**変数 [#za312119]
|以前の実行結果|%|
|円周率π|%pi|
|自然対数の底e|%e|
|虚数単位i|%i|


**基本操作 [#e3ffd1b9]
|記号|効果|h
|A;|表示|
|A:B;|代入|
|A.B|行列演算|
|A*b|行列A*ベクトルbの演算|
|A^^n|n乗|
|A^3|要素n乗|
|Aˆˆ(-1); or invert(A);|逆行列|
|n*(n+1)/2, n=10;|式に一時的に値を代入可能|
|f(x) := x^2 + 2*x + 1;, h(x) := if x < 0 then 0 elseif x = 0 then 1/2 else 1;|関数定義(二次関数とヘヴィサイド関数)|

**関数 [#l23a8e52]
|sum(一般項, 添字変数, 下限, 上限); product(式, 添字, 下限, 上限);|ΣとΠ|
|radcan(%)|ルートが入った式の整理|
|allroots(x^2 = 4);, find_root(x^2-x-2, x, 0, 5);|近似解|
|expand((x+y)^4);, factor(%);|因数展開、因数分解|
|partfrac(x/(x+1), x);, ratsimp(%);|部分分数分解、部分分数展開|
|solve([y=x^2, y=x+2], [x, y]);|厳密解|
|diff(x^x, x);, integrate(x, x);|微分積分|
|limit(sin(x)/x, x, 0);|極限|
|taylor(sin(x), x, 0, 5);|テイラー展開(0周りで5似まで展開)|

**solve文詳細 [#f8b09159]
 eq1 : a*x + b*y = e;
 eq2 : c*x + d*y = f;
 solve([eq1, eq2], [x, y]);


*描画 [#b6ddd424]
-[[すごくいい描画の例>http://kn-makkun.com/MakkunWp/maxima.html#Kangaeru2]]
-陰関数を扱うときは,load(draw);が必須
 load(draw);
 draw3d([implicit(x^2+y^2+z^2=0.5,x,-1,1,y,-1,1,z,-1,1)], [color=red,implicit(x^2+y^2+z^2=1,x,-1,1,y,-1,1,z,-1,1)]);

*キー待ち [#i85fc147]
-pauseの代わりは
 readline(?\*standard\-input\*);

*tex出力 [#i0022cff]
-http://maxima.sourceforge.net/docs/manual/maxima_13.html#SEC73

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS