トップ 差分 一覧 ソース 検索 ヘルプ RSS ログイン

Tips-maxima

  Maxima

octaveの場合には Tips-octave

インストール

zypper install maxima
http://maxima.sourceforge.net/download.html
## https://sourceforge.net/projects/maxima/files/Maxima-Linux/
# https://sourceforge.net/p/maxima/code/ci/master/tree/
# ./bootstrap 
#####  ./configure --prefix$HOME/opt/maxima/ 
# ./configure --prefix=$HOME/opt/maxima/ --enable-sbcl-exec 
# LANG=C make
# LANG=C make check
# make install 

起動

CLI の場合
> maxima 
( 
GUI の場合
> wxmaxima
( 行末は shit+enter_key )

Batch
> maxima -b test.m

使い方

式(コマンド(命令))+;(セミコロン)+[Enter](もしくはshit+enterr)
終了は
quit() ;
CPUの使用時間は
showtime:true;
 

四則演算

 + - * / 
ただし(割算の場合)

(%i2) 33/4;
                                     33
(%o2)                                --
                                     4
のようになる
数値がほしい場合には
(%i3) float(%);
(%o3)                                8.25
とする
また
(%i4) 22/4;
                                     11
(%o4)                                --
                                     2
通分が必要な婆には通分も行う

割算
(%i1) divide(253,17);
(%o1)  [14,15]
商
(%i2) quotient(253,17);
(%o2)  14
余
(%i3) mod(253,17);
(%o3)  15

特殊記号

%       直前の結果( 上記の場合 11/2 )
;       式の終了(結果を表示する)
$       式の終了 (結果を表示しない)
:       値の代入 ( x:3;    x に 3 を代入 )
:=      式の定義 ( f(x):=x^2-x+1; )
定数を作る(例えば a を 1200 とか代入する場合)
  :     使用例 a:1200
  :=    使用例 a(x):=1200+x

定数(一部)

%pi     円周率π
%e      自然対数のe
%i      虚数のi
inf     +∞
minf    -∞

良く使う変数(一部)

小数点表示(実数表示)
  float()
   3/4;
   float(3/4);
平方根
  sqrt    平方根
   sqrt(3);
 
極限
  lim
(%i6) limit(1/x,x,inf);
(%o6)                                  0
(%i7) limit(1/x,x,minf);
(%o7)                                  0 
三角関数
(%i8) sin(%pi);
(%o8)                                  0
(%i9) cos(%pi);
(%o9)                                 - 1
自然対数
(%i10) log(%e);
(%o10)                                 1
常用対数の場合は ( log(10) で割る)
方程式を解く
solve(式,変数);
(%i11) solve(x^2-x+1=0,x);
                         sqrt(3) %i - 1      sqrt(3) %i + 1
(%o11)            [x = - --------------, x = --------------]
                              2                   2
## sqrt(3) は √3 
## %i は虚数のi
## つまり sqrt(3) %i は √3i の意味
微分
diff( 1/x, x );
積分
integrate(1/x, x);
因数分解
factor( 式 );
最大公倍数
(%i1) f(x):=7*x+10;
(%o1)                          f(x) := 7 x + 10
(%i2) g(x):=2*x+3 ;
(%o2)                           g(x) := 2 x + 3
(%i3) gcd(f(x),g(x));
(%o3)                                  1
最小公約数
(%i5) lcm(51,85);
(%o5) 255
シグマ(総和)
sum(k, k, 1, n),simpsum;
sum(j^2, j, 1, n),simpsum;
sum(m*(m+1), m, 1, n),simpsum;

https://www.geisya.or.jp/~mwm48961/linear_algebra/maxima12.htm
式を展開
expand( 式 );
通分
ratexpand(式);
    
(%i3) 1/(z^2/a^2+y^2/b^2);
                                      1
(%o3)                              -------
                                    2    2
                                   z    y
                                   -- + --
                                    2    2
                                   a    b
(%i4) ratexpand(1/(z^2/a^2+y^2/b^2));
                                     2  2
                                    a  b
(%o4)                            -------------
                                 2  2    2  2
                                b  z  + a  y

グラフの表示

plot2d ( sin(x), [0,2*%pi] ) ;

変数の値の消去

a:10$a;
remvalue(a)$a;
値をすべて消去するには remvalue(all); とします。
また、変数ごと消すには kill(変数)     とします。
変数をすべて消去するには kill(all); とします。

f(x)=x^3-3x
の極値を求める

式を微分

(%i1) diff(x^3-3*x);
                                   2
(%o1)                          (3 x  - 3) del(x)

微分の結果を解く

(%i2) solve(3*x^2-3,x);
(%o2)                          [x = - 1, x = 1]

結果の確認(傾き0であることを確認)

(%i3) f(x):=3*x^2-3;
                                          2
(%o3)                          f(x) := 3 x  - 3
(%i4) x:1;
(%o4)                                  1
(%i5) f(x);
(%o5)                                  0

結果を求める

(%i6) f(x):=x^3-3*x;
                                       3
(%o6)                          f(x) := x  - 3 x
(%i7) f(x);
(%o7)                                 - 2
(%i8) x:-1;
(%o8)                                 - 1
(%i9) f(x);
(%o9)                                  2

よって

x=1 ,y=-2
x=-1,y=2

が求まる

例2

10^(0.75) を求める

連立方程式をもとめる

Vector

微分する

行列

ベクトル

appendix