MATHEMATICAチュートリアル

定義

置換演算子を使うことで,特定の式に変換規則を適用することができる.それでは,変換規則を必要なときに自動的に適用させるにはどうしたらよいだろう.

これを行うには,Mathematica 式やパターンに対して特定値の割当てを行う.各割当ては,特定された形の式が現れるたびに適用される変換規則を指定する.

expr/.lhs->rhs指定された式だけに規則を適用し変換する
lhs=rhs特定形の式が現れるたびに,それに適用される変換規則を定義する値を割り当てる

変換規則の手動適用と自動適用

特定の式にに関する変換規則を適用する.
In[1]:=
Click for copyable input
Out[1]=
に値を割り当てることで,必要なときに自動的にに関する変換規則を適用するよう Mathematica に指示する.
In[2]:=
Click for copyable input
Out[2]=
は自動的に変換される.
In[3]:=
Click for copyable input
Out[3]=

ModuleBlock等の構成体の内部にない限り,すべての割当て操作は現行セッションにおいて継続する.故意に取り去られるか,別の値で上書きされるまでは有効なまま残る.

その継続性のため,割当て操作は気を付けて行う.Mathematica を使うときに最もよく見受けられる誤りは,変数等に割当てを前に定義したことを忘れてしまい,を再び使ってしまうというものである.

この程度の間違いは次のようにすれば未然に防げる.第1に,なるべく恒久的な割当ては行わない.置換演算子等の,より限定された構成体を使うようにする.第2に,割当てを行ったなら,使う必要がなくなり次第に割当ての取消し演算子またはClearを使い割当て関係を解除しておく.

もうひとつの予防策として,よく使われそうな名前や簡単な名前の付いた変数に割り当てるときは十分に先の事を考えてから行うようにする.のような名前はシンボルとしてよく使われるだろう.等の割当てを行ってしまうと,は現れるたびにに置換され,シンボル的なパラメータとしては使えなくなってしまう.

通常,後で別の用途を想定しているような変数には恒久的な値は割り当てない方がよい.例えば,光の速度を定数化する意味で変数の値を割り当てたとする.後でを別の用途,例えば,単なる未確定係数として使おうとしてもそれができなくなってしまう.そうしないためには,の代りにというようにできるだけ特定化された名前を使う.

x=.変数 x に割り当てられている値を削除する
Clear[x,y,...]数の変数 x, y, ... に割り当てられた値をすべて消去する

割当て値の削除

思ったような分解式は得られない.これは,すでに上でに値が割り当てられてしまったからである.
In[4]:=
Click for copyable input
Out[4]=
に割り当てられている値を消去する.
In[5]:=
Click for copyable input
今度は狙った結果を得ることができる.
In[6]:=
Click for copyable input
Out[6]=
New to Mathematica? Find your learning path »
Have a question? Ask support »