Scilab Tips #001
数式処理は、商用ソフト買わなくても、これで十分じゃん?と思いました。
Q0. Scilabって何?
A1. オープンソースの数式処理、可視化、シミュレーションツールです。
フランスのINRIA Rocquencourt Research UnitのMetalau research-teamで開発されたそうです。
Scilab Home Page
http://www.scilab.org/
A1. spec(A)、bdiag(A)を使います。
以下、例
(行列の定義)
-
- >a=[1 2 1
- >2 3 1
- >1 1 4]
a =
1. 2. 1.
2. 3. 1.
1. 1. 4.
(固有値の計算)
-
- >spec(a)
ans =
- 0.2635428
2.7556401
5.5079028
(対角化)
-
- >bdiag(a)
ans =
- 0.2635428 0. 0.
0. 2.7556401 0.
0. 0. 5.5079028
-
- >[Va,Ve]=bdiag(a)
Ve =
0.8608900 0.2893960 - 0.4184715
- 0.5017706 0.6190719 - 0.6041327
- 0.0842303 - 0.7300685 - 0.6781632
Va =
- 0.2635428 0. 0.
0. 2.7556401 0.
0. 0. 5.5079028
(行列の転置)
-
- >Ve.'
ans =
0.8608900 - 0.5017706 - 0.0842303
0.2893960 0.6190719 - 0.7300685
- 0.4184715 - 0.6041327 - 0.6781632
(行列の複素共役&転置)
-
- >Ve'
ans =
0.8608900 - 0.5017706 - 0.0842303
0.2893960 0.6190719 - 0.7300685
- 0.4184715 - 0.6041327 - 0.6781632
(逆行列)
-
- >inv(a)
ans =
- 2.75 1.75 0.25
1.75 - 0.75 - 0.25
0.25 - 0.25 0.25
(四則演算)
-
- >a+2*inv(a)/2-5
ans =
- 6.75 - 1.25 - 3.75
- 1.25 - 2.75 - 4.25
- 3.75 - 4.25 - 0.75