# filter_and_resample_pwc¶

The Boulder Opal Toolkits are currently in beta phase of development. Breaking changes may be introduced.

filter_and_resample_pwc(pwc, cutoff_frequency, segment_count, *, name=None)

Filter a piecewise-constant function with a sinc filter and resample it again.

Parameters
• pwc (Pwc) – The piecewise-constant function $$\alpha(t)$$ to be filtered.

• cutoff_frequency (float) – Upper limit $$\omega_c$$ of the range of angular frequencies that you want to preserve in your function.

• segment_count (int) – The number of segments of the resampled filtered function.

• name (str, optional) – The name of the node.

Returns

The filtered and resampled piecewise-constant function.

Return type

Pwc

convolve_pwc()

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

discretize_stf()

Create a piecewise-constant function by discretizing a sampleable function.

sinc_convolution_kernel()

Create a convolution kernel representing the sinc function.

Notes

The resulting filtered function is

$\int_{-\infty}^\infty \alpha(\tau) \frac{\sin[\omega_c (t-\tau)]}{\pi (t-\tau)} \mathrm{d}\tau = \frac{1}{2\pi} \int_{-\omega_c}^{\omega_c} e^{i \omega t} \hat\alpha(\omega) \mathrm{d}\omega$

where

$\hat\alpha(\omega) =\int_{-\infty}^\infty e^{-i \omega \tau}\alpha(\tau) \mathrm{d}\tau$

is the Fourier transform of $$\alpha(t)$$. Hence the filter eliminates components of the signal that have angular frequencies greater than $$\omega_c$$.