- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
!! 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); とします。
!MATRIX
*tips-maxima-matrix
! 例
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) を求める
!連立方程式をもとめる
*(tips-maxima-ren)
!Vector
*(Tips-maxima-vect)
!微分する
*(Tips-maxima-diff)
!行列
*(Tips-maxima-matrix)
*(tips-maxima-matrix)
!ベクトル
*(Tips-maxima-vect)
!appendix
*http://maxima.zuisei.net/
*http://edu.isc.chubu.ac.jp/hsuzuki/iip/maxima/maxima1.html
*https://ja.wikipedia.org/wiki/Maxima
*http://maxima.combinators.net/gamen.html
*https://pianofisica.hatenablog.com/entry/2019/05/19/063057#%E5%B9%B3%E5%9D%87%E5%88%86%E6%95%A3%E6%A8%99%E6%BA%96%E5%81%8F%E5%B7%AE
*http://maxima.combinators.net/equation.html