# convolve_pwc¶

static OperationNamespace.convolve_pwc(pwc, kernel=None, *, kernel_integral=None)

Creates the convolution of a piecewise-constant function with a kernel.

Parameters
• pwc (Pwc) – The piecewise-constant function $$\alpha(t)$$ to convolve. You can provide a batch of functions, in which case the convolution is applied to each element of the batch.

• kernel (ConvolutionKernel) – The node representing the kernel $$K(t)$$.

• kernel_integral (deprecated) – This parameter will be removed in the future, please use kernel instead.

Returns

The sampleable function representing the signal $$(\alpha * K)(t)$$ (or batch of signals, if you provide a batch of functions).

Return type

Stf

Notes

The convolution is

$(\alpha * K)(t) \equiv \int_{-\infty}^\infty \alpha(\tau) K(t-\tau) d\tau.$

Convolution in the time domain is equivalent to multiplication in the frequency domain, so this function can be viewed as applying a linear time-invariant filter (specified via its time domain kernel $$K(t)$$) to $$\alpha(t)$$.

discretize_stf()

Discretize an Stf into a Pwc.

gaussian_convolution_kernel()

Create a convolution kernel representing a normalized Gaussian.

pwc()

Create piecewise-constant functions.

sample_stf()

Sample an Stf at given times.

sinc_convolution_kernel()

Create a convolution kernel representing the sinc function.