Heaviside関数Hは、負の入力に対して0、正の入力に対して1の値をとる非連続関数である。
制御理論の数学で、ある時刻にスイッチが入り、無期限にスイッチが入ったままになる信号を表す関数である。英国人オリバー・ヘヴィサイドにちなんで命名された。
Heaviside関数はDiracδ関数の積分であり、H′=δである。H′ = δ と書かれることもある。
定義と表記
一般に単位ステップ関数(Heaviside関数)は次のように定義される:
- H(t) = 0, t < 0
- H(t) = 1, t > 0
t = 0 における値 H(0) は文献や用途によって扱いが分かれます。対称性や変換の都合から H(0) = 1/2 と定めることが多く、特にフーリエ変換や分布論的扱いで自然になりますが、信号処理や離散化では 0 または 1 とすることもあります。どの定義を採るかは文脈に合わせて明示してください。
基本的性質
- 加法・平行移動:H(t − t0) は時刻 t0 で「入る」信号を表す。
- スケーリング:H(a t) は a の符号で入り方が変わる(a > 0 なら単に速さの違い)。
- 掛け算による因果化:任意の信号 x(t) に対し x(t)H(t) は因果信号(t < 0 で 0)を表す。
- 積分と微分(分布として):H(t) は分布(一般化関数)として扱うと微分がデルタ関数になる。形式的に H′(t) = δ(t)(分布の等式)であり、逆に δ(t) は H(t) の弱導関数とみなせる。
デルタ関数との関係
デルタ関数 δ(t) は「無限に鋭い」インパルスで、次の関係が成り立つ:
- ∫_{-∞}^{t} δ(τ) dτ = H(t) (積分の定義により、任意の t に対して上限までの累積がステップになる)
- 分布としての微分:dH/dt = δ
これらは通常の関数の微分・積分とは異なり、分布論の枠組みで厳密に扱われます。実際にはデルタは関数ではなく測度や線形汎関数である点に注意してください。
連続近似(正則化)の例
実用上は連続関数の極限としてステップを表現することが多いです。代表的な近似:
- シグモイド関数: Hε(t) = 1 / (1 + e^{-t/ε}), ε → 0+
- アークタン関数: Hε(t) = 1/2 + (1/π) arctan(t/ε)
- ローレンツ形やガウス関数を積分して得る形
これらの連続化を用いると、数値計算や数値微分でデルタに近い挙動を扱いやすくなります。
変換(ラプラス・フーリエ)
- ラプラス変換:因果型の単位ステップ H(t) の片側ラプラス変換は L{H(t)} = 1/s (Re(s) > 0)となります(H(0) の取り扱いにより補正が必要な場合あり)。
- フーリエ変換(分布として):F{H(t)} = P.V.(1/(jω)) + π δ(ω)、ここで P.V. は主値(principal value)を表します。この形は H を通常の関数としてではなく分布として扱うために現れます。
用途と例
- 制御・信号処理:スイッチやステップ入力(単位ステップ応答)を表す基本要素。伝達関数の単位ステップ応答から系の時定数や過渡特性を調べる。
- 微分方程式の解法:強制項としてのステップ入力を扱うとき、初期条件を含めた解の導出に用いる。
- 畳み込み:δ と H の畳み込みは H そのものである(δ は単位元)。また任意の信号 x(t) と H(t) の畳み込みは causal な積算を表す。
- 例:因果正弦波は sin(t)H(t)。
注意点と実務的アドバイス
- t = 0 での値(0, 1, 1/2)を明示する。数式操作や離散化で結果が変わることがあるため、定義を最初に決めておく。
- デルタ関数やフーリエ変換を扱うときは「分布」としての取り扱いを意識する。無理に通常関数のルールを適用すると矛盾を招く。
- 数値シミュレーションでは連続近似を使い、ε を系の時定数やサンプリング周期に合わせて選ぶとよい。
以上がHeaviside関数(単位ステップ関数)の基本的な定義・性質・デルタ関数との関係の概観です。用途に応じて定義の細部(特に t = 0 における値)を明確にしてから議論を進めると混乱が少なくなります。

