zerodf

class diffsptk.AllZeroDigitalFilter(filter_order, frame_period=1, ignore_gain=False)[source]

See this page for details.

Parameters
filter_orderint >= 0 [scalar]

Order of filter coefficients, \(M\).

frame_periodint >= 1 [scalar]

Frame period, \(P\).

ignore_gainbool [scalar]

If true, perform filtering without gain.

forward(x, h)[source]

Apply an all-zero digital filter.

Parameters
xTensor [shape=(B, T)]

Excitation signal.

hTensor [shape=(B, T/P, D)]

Filter coefficients.

Returns
yTensor [shape=(B, T)]

Output signal.

Examples

>>> x = diffsptk.step(4)
>>> h = diffsptk.ramp(4)
>>> zerodf = diffsptk.AllZeroDigitalFilter(0)
>>> y = zerodf(x.view(1, -1), h.view(1, -1, 1))
>>> y
tensor([[0., 1., 2., 3., 4.]])

See also

linear_intpl c2mpir