|
DiscreteMath`DiscreteStep`
信号処理アプリケーションでは,原点で始まる一様な一連のインパルスを1つの関数で表すと便利なことがよくある.Mathematica には原点にいて1つのインパルスを表すためのDiscreteDeltaという関数が含まれており,これを使って無限和でインパルス列を表すこともできるが,いささかやりにくい.そこで,DiscreteStep関数を導入する.

DiscreteStep機能
DiscreteStep[n]は非負の整数 に対して を,それ以外に対しては を返す.DiscreteStep[ , , ... ]は, がすべて非負の整数であれば を,それ以外の場合は を返す.DiscreteStepは自動的に自身をリスト要素にマップする.この関数は記号的な入力では評価されない.
パッケージをロードする.
In[1]:= <<DiscreteMath`DiscreteStep`
以下はさまざまな入力値に対する離散ステップである.
In[2]:= DiscreteStep[{1, 0, -1, 0.5, -0.5}]
Out[2]= 
入力は,多次元でもよい.
In[3]:= DiscreteStep[1, 2, 1, 0]
Out[3]= 
DiscreteStepを含む記号式は簡約できる.
In[4]:= SimplifyDiscreteStep[ b DiscreteStep[n] + a DiscreteStep[n] ]
Out[4]= 
DiscreteStepの加法の規則も利用できる.
In[5]:= Sum[-DiscreteStep[-2 + x] + DiscreteStep[x], {x, -Infinity, Infinity}]
Out[5]= 
|