ツール?
概要 †
いろいろ詰まったサンプル †
/*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();
文法 †
- コメントアウトは/**/
- 終端は;か\( ( \)が表示抑制)
- Maxima は大文字,小文字. を区別しない.
行列 †
コマンド | 機能 | [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) | 転置 |
変数 †
以前の実行結果 | % | 円周率π | %pi | 自然対数の底e | %e | 虚数単位i | %i |
基本操作 †
記号 | 効果 | A; | 表示 | 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; | 関数定義(二次関数とヘヴィサイド関数) |
関数 †
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文詳細 †
eq1 : a*x + b*y = e;
eq2 : c*x + d*y = f;
solve([eq1, eq2], [x, y]);
描画 †
- すごくいい描画の例
- 陰関数を扱うときは,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)]);
キー待ち †
tex出力 †
|