Convolve
詳細とオプション
- Convolveは,フーリエ(Fourier)たたみ込み,非因果的たたみ込み,両側たたみ込みとしても知られている.
- 2つの関数
と
のたたみ込み
は
で与えられる. - 多次元たたみ込みは
で与えられる. - 使用可能なオプション
-
Assumptions $Assumptions パラメータに関する仮定 GenerateConditions False パラメータについての条件を生成するかどうか Method Automatic 使用するメソッド PrincipalValue False 初期値積分を使うかどうか
例題
すべて開く すべて閉じる例 (3)
DiracDeltaで関数をたたみ込む:
Convolve[DiracDelta[x], f[x], x, y]Convolve[UnitBox[x], UnitBox[x], x, y]Convolve[Exp[-x]UnitStep[x], Exp[-x]UnitStep[x], x, y]Plot[%, {y, 0, 10}, PlotRange -> All]スコープ (5)
一変数のたたみ込み (3)
f[x_] := UnitBox[x]g[x_] := E ^ (-x ^ 2)GraphicsRow@Table[Plot[{f[x], g[x - i]}, {x, -3, 4}, Ticks -> None, Exclusions -> None,
PlotRange -> All], {i, -1, 2}]Convolve[f[x], g[x], x, y]Convolve[x, 1 / (x ^ 2 + 1), x, y]Convolve[E ^ (-a x ^ 2), 1, x, y]f0 = UnitBox[x];f1 = Convolve[f0, f0, x, y] /. y -> xf2 = Convolve[f1, f1, x, y] /. y -> x//Simplifyf3 = Convolve[f2, f2, x, y] /. y -> x//Simplify;Plot[Evaluate[{f0, f1, f2, f3}], {x, -3, 3}, Exclusions -> None]Integrate[{f0, f1, f2, f3}, {x, -∞, ∞}]多変数のたたみ込み (2)
f[x_, y_] := E ^ (-x ^ 2 - y ^ 2)GraphicsGrid@Table[Plot3D[{f[x, y], f[x - i, y - j]}, {x, -3, 3}, {y, -3, 3}, Mesh -> 5, ImageSize -> 400, Ticks -> None,
PlotRange -> All, PlotStyle -> {LightRed, LightOrange}], {i, -1, 1}, {j, -1, 1}]Convolve[f[x, y], DiracDelta[x, y], {x, y}, {r, s}]有界サポートを持つ関数のたたみ込みはフィルタとして動作する:
Convolve[E ^ (-x ^ 2 - y ^ 2), UnitBox[x, y], {x, y}, {r, s}]一般化と拡張 (1)
UnitStepによる乗算は,事実上有限区間におけるたたみ込みを返す:
Convolve[x ^ 5 UnitStep[x], Sin[x] UnitStep[x], x, y, Assumptions -> y > 0]Integrate[x ^ 5 Sin[y - x], {x, 0, y}, Assumptions -> y > 0]オプション (2)
Assumptions (1)
アプリケーション (5)
First@Simplify[y[x] /. DSolve[{y'[x] + y[x] == x ^ 2, y[0] == 0}, y, x]]Expand[Simplify[Convolve[E ^ (-t)UnitStep[t], t ^ 2 UnitStep[t], t, x], x > 0]]インパルス応答が h のときの線形で時不変系のステップ応答を得る:
h = Exp[-x]UnitStep[x];Plot[h, {x, 0, 10}, PlotRange -> All]Convolve[h, UnitStep[x], x, y]Plot[%, {y, 0, 10}, PlotRange -> All]UniformDistributionのPDFのそれ自身でのたたみ込みはTriangularDistributionを与える:
Convolve[PDF[UniformDistribution[{0, 1}], x], PDF[UniformDistribution[{0, 1}], x], x, y]PDF[TriangularDistribution[{0, 2}], y]FullSimplify[%% - %]UniformSumDistribution[n]は n 個のUniformDistribution[]の確率密度関数のたたみ込みである:
Table[Convolve[PDF[UniformSumDistribution[k], x], PDF[UniformDistribution[{0, 1}], x], x, y] - PDF[UniformSumDistribution[k + 1], y], {k, 2, 5}]//FullSimplifyTable[Plot[PDF[UniformSumDistribution[k], x], {x, 0, 4}, Filling -> Axis, Exclusions -> None, PlotRange -> {0, 1}, PlotLabel -> k], {k, 1, 4}]ErlangDistribution[k,λ]は k 個のExponentialDistribution[λ]の確率密度関数のたたみ込みである:
Convolve[PDF[ErlangDistribution[k, λ], x], PDF[ExponentialDistribution[λ], x], x, y]PDF[ErlangDistribution[k + 1, λ], y]FullSimplify[%% - %]Table[Plot[PDF[ErlangDistribution[k, 1], x], {x, 0, 8}, Filling -> Axis, Exclusions -> None, PlotRange -> {0, 1}, PlotLabel -> k], {k, 1, 4}]特性と関係 (7)
Convolveは数直線上で積分を計算する:
Convolve[x ^ 2, E ^ (-x ^ 2), x, y]Integrate[x ^ 2 E ^ (-(y - x) ^ 2), {x, -Infinity, Infinity}, Assumptions -> Im[y] == 0]DiracDeltaを伴うたたみ込みは関数自身を与える:
Convolve[Sin[x], DiracDelta[x], x, y]Convolve[a r[x], s[x], x, y]Convolve[r[x], a s[x], x, y]f[x_] := x ^ 2g[x_] := E ^ (-Abs[x])Convolve[f[x], g[x], x, y]Convolve[g[x], f[x], x, y]Convolve[h[x], i[x] + j[x], x, y]Convolve[h[x] + i[x], j[x], x, y]因果的たたみ込みのラプラス(Laplace)変換は個々の変換の積である:
f[x_] := Sin[x]UnitStep[x]g[x_] := x UnitStep[x]Together[LaplaceTransform[Convolve[f[x], g[x], x, y], y, s]]LaplaceTransform[f[x], x, s]LaplaceTransform[g[x], x, s]たたみ込みのフーリエ(Fourier)変換は個々の変換の積に関連している:
f[x_] := UnitBox[x / 2];g[x_] := 2UnitBox[(x + 1) / 3];Plot[{f[x], g[x]}, {x, -3, 3}, Exclusions -> None, Filling -> Axis]FourierTransform[f[x], x, ω, FourierParameters -> {1, 1}] FourierTransform[g[x], x, ω, FourierParameters -> {1, 1}]FourierTransform[Convolve[f[y], g[y], y, x], x, ω, FourierParameters -> {1, 1}]//FullSimplifyFullSimplify[% / %%]インタラクティブな例題 (1)
DynamicModule[{f, g, h},
f[x_] := UnitBox[x / 2];
g[x_] := UnitBox[x];
h[y_] = Convolve[f[x], g[x], x, y];
Manipulate[
GraphicsRow[{
Plot[{f[x], g[y - x]}, {x, -5 / 2, 5 / 2}, ...],
Plot[f[x] g[y - x], {x, -5 / 2, 5 / 2}, ...],
Plot[h[x], {x, -5 / 2, y}, ...]}, ImageSize -> 480], {{y, -0.8, Style["y", Italic]}, -2, 2}]]関連するガイド
-
▪
- 積分変換 ▪
- フーリエ(Fourier)解析 ▪
- 一般化された関数 ▪
- 微積分
関連リンク
テキスト
Wolfram Research (2008), Convolve, Wolfram言語関数, https://reference.wolfram.com/language/ref/Convolve.html.
CMS
Wolfram Language. 2008. "Convolve." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/Convolve.html.
APA
Wolfram Language. (2008). Convolve. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Convolve.html
BibTeX
@misc{reference.wolfram_2026_convolve, author="Wolfram Research", title="{Convolve}", year="2008", howpublished="\url{https://reference.wolfram.com/language/ref/Convolve.html}", note=[Accessed: 14-July-2026]}
BibLaTeX
@online{reference.wolfram_2026_convolve, organization={Wolfram Research}, title={Convolve}, year={2008}, url={https://reference.wolfram.com/language/ref/Convolve.html}, note=[Accessed: 14-July-2026]}