一般化された関数と関連操作

実際問題では多くの場合,ある一定量のものが微小領域に集中しているような極限を考慮すると便利なことがある.微積分学で扱われる通常の数学的な関数では,このような極限を直ちに表すことができない.しかし,超関数を導入することによって,これらの極限を積分や他の計算形式で表すことができる.

DiracDelta[x]ディラック(Dirac)のデルタ関数
HeavisideTheta[x]の場合は0,の場合は1のヘビサイド(Heaviside)のシータ関数

ディラックのデルタ関数とヘビサイドのシータ関数

の周りに集中した関数.
In[1]:=
Click for copyable input
Out[1]=
が大きくなるにつれ,関数は次第に集中してくる.
In[2]:=
Click for copyable input
Out[2]=
なら積分は常に1に等しくなる.
In[3]:=
Click for copyable input
Out[3]=
を無限大にした場合の関数の極限は,ディラックのデルタ関数となり,積分は再び1になる.
In[4]:=
Click for copyable input
Out[4]=
DiracDelta以外のすべての実数の点で0に評価する.
In[5]:=
Click for copyable input
Out[5]=

積分内にデルタ関数を組み入れると,デルタ関数の引数がゼロになる離散的な点で,被積分関数の値を抽出できる効果がある.

関数を引数で抽出する.
In[6]:=
Click for copyable input
Out[6]=
少し複雑な例を示す.
In[7]:=
Click for copyable input
Out[7]=
これにより,積分領域で の零点の個数を数えることができる.
In[8]:=
Click for copyable input
Out[8]=

ヘビサイド関数HeavisideTheta[x]はデルタ関数の不定積分である.これは,および等で表される.一般化された関数として,ヘビサイド関数は積分内でのみ定義される.この点で,区分関数である単位階段関数UnitStep[x]と区別される.

デルタ関数の不定積分はヘビサイドのシータ関数である.
In[9]:=
Click for copyable input
Out[9]=
この積分の値は が区間内にあるかどうかによる.
In[10]:=
Click for copyable input
Out[10]=

DiracDeltaHeavisideThetaは,積分変換でよく現れる.

定数関数のフーリエ変換はデルタ関数である.
In[11]:=
Click for copyable input
Out[11]=
のフーリエ変換には2つのデルタ関数の和が含まれる.
In[12]:=
Click for copyable input
Out[12]=

ディラックのデルタ関数はDSolveで使用され,線形および他の微分方程式で表された系のインパルス応答やグリーン(Green)関数を見付けるのに使われる.

でインパルスを受ける調和振動子の挙動を示す.
In[13]:=
Click for copyable input
Out[13]=
DiracDelta[x1,x2,]多次元ディラックのデルタ関数
HeavisideTheta[x1,x2,]多次元ヘビサイドのシータ関数

多次元のディラックのデルタ関数とヘビサイドのシータ関数

多次元の一般化された関数は,本質的に一変量の一般化された関数の積である.

これは,多次元ヘビサイド関数の導関数である.
In[14]:=
Click for copyable input
Out[14]=

多次元ディラックのデルタ関数に関連するものとして離散デルタとクロネッカーのデルタの2つの整数関数がある.離散デルタ はすべての ならば1であり,その他の場合はゼロである.クロネッカーのデルタ は, がすべて等しければ1であり,その他の場合はゼロである.

DiscreteDelta[n1,n2,]離散デルタ
KroneckerDelta[n1,n2,]クロネッカーのデルタ

整数デルタ関数