概要:このページでは、数学ソフトMathematicaの基本的な使い方を解説します。 親ページ:このページの親ページはMathematicaです。
Mathematicaの基本的な情報 †Mathematicaで出来ること †普通の数学に登場する計算は全部出来る.簡単な電卓としても使えるし,微分方程式だって解ける.100個未知数があって100本方程式があるとき,Mathematicaに解かせたほうが絶対はやい.経済学との絡みで言えば,効用関数のグラフを描いたり,無差別曲線を描いたりすると視覚的な手助けになるので,経済理論の理解が深まる. 有用サイト,本 †以下の本を読みながら実際にMathematicaをいじってみれば、一通り使いこなせるようになります。
ネット上にあるメモとして,以下があります. 基本的な使い方 †In[1]:= 3+2 などと押す.[SHIFT]を押しながら,ENTERを押すと, Out[1]= 5 などと帰ってくる(以下,In[]とかOut[]とかは省略する).四則演算の記号は,
を使う. aに3を代入する場合は, a = 3 とやる.これは,a=3(aイコール3)という等式を意味しているのではなく,「aに3を代入せよ」ということを意味する. a*4 とかやれば, 12 とか返ってくる.aの中の3を消去したい場合 Clear[a] とかやればよい.ここで,Clear[]はMathematicaに内臓されている組込関数である.組込関数は,すべて大文字で始まり,関数の対象を [] でくくる.このルールは,すべての組込関数で同じ.尚,オブジェクト指向に a // Clear とかやっても,まったく同じである. 変数に代入する方法としては,以下のような方法もある. 5 a + 5 /. a->10 こうやれば, 55 とか返ってくる.a=3とやると,Clear[]で消去するまで,aの中に3が入っている(aがグローバル変数ということ)が,この方法だとこの行でのみaに10が入っている(aはローカル変数ということ).複数の変数を同時に代入するときは, 2 x + 3 y + 4 z /. {x->10, y->20, z->30} とやればよい. ここで,掛け算は,*という記号を使わずに,半角スペースを開ければよい点に注意. 他に,関数をいくつか紹介しておこう.例えば, (x+1)^5 // Expand とやれば,展開してくれる.展開内容を,再び因数分解したい場合は, Factor[] をやればよい. 複雑に見える数式を,もっとも簡潔な形に,すっきりとまとめてくれる関数は, Simplify[] である. その他,例えば円周率のπは, Pi である.πを5桁で表現したい場合は, N[Pi,5] とやればよい. また, Out[1] + 4 などとやれば, 9 と返ってくる.これは,一番最初の計算式3+2の結果の5がOut[1]の中に入っているためである. %1 は,Out[1]と同じ内容を返す. 直前のOutputは, % の中に入っている.2つ前のOutputは %% の中に入っている.3つ前のOutputは %%% の中に入っている. 関数の定義 †組込関数ではなく,自分オリジナルの関数を定義することも出来る.例えば,xにある値を代入したとき,その10乗を計算してくれる関数を定義してみよう. jujo[x_]:=x^10 これだけで, jujo[3] などどやれば, 59049 と瞬時に,3^10を計算してくれる.すごい.定義する関数名は,既存の組込関数とかぶらないように注意すべきである.既存の組込関数はすべて大文字から始まることに注意して,自分で作るときには,小文字から始まるようにすれば,まずかぶらない. x_ とやるのは,xという変数そのものみ意味があるのではなく,そこに何かを代入するのだ,ということを明確にするためである. 多変数の関数も当然,定義できる.例えば, aho[x_, y_, z_] := x^2 y^3 z^4 と定義して, aho[1, 2, 4] とやれば, 2048 と即座に返ってくる.すごい. 定義した関数を完全に消去するには, Remove[aho] とかやる.グローバル変数とローカル変数が混在すると良くないので,こまめにMathematicaを新しく起動することを推奨する. なお, g[x_] := 5 x + 1 などと関数を定義したとき, g[x] とやれば 1 + 5 x を返すが, g だけでは,定義された関数だと認識してくれないので注意すべし. g[a] とやれば, 1 + 5 a と返ってくることから,g[]の,[]の中に何を代入するかが大事である. g[a] /. a -> x とかやれば, 1 + 5 x とか返ってくる. 合成関数も扱える. f[x_] := x^3 g[x_] := 5 x + 1 と定義しておこう. f[g[x]] とやれば, (1 + 5 x)^3 を返す. g[f[x]] とやれば, (1 + 5 x^3) を返す. 論理式 †x==y xとyは等しい x!=y xとyは等しくない x>y x>y x>=y x≧y x<y x≦y A && B 条件Aかつ条件B A || B 条件Aまたは条件B !A 条件Aではない Xor[A,B] 排他的な「または」(AまたはBの,どちらか一方のみ) 以上の論理式を使って,条件付き関数を考えることも出来る.例えば, hantei[x_] := -1 /; x < 0; hantei[x_] := 0 /; x == 0; hantei[x_] := 1 /; x > 0; と定義すれば,Indicator関数のようなものが定義できる.つまり, hantei[0] とやれば, 0 と返ってくる. hantei[11] とかやれば, 1 と返ってくる. hantei[-10] とかやれば -1 とか返ってくる. Reference †参考書籍 †
リンク † |