filter
1-D digital filter
📝 Syntax
y = filter(b, a, x)
📥 Input argument
b - Numerator coefficients of rational transfer function: vector.
a - Denominator coefficients of rational transfer function: vector.
x - Input data: matrix.
📤 Output argument
y - Filtered data: matrix.
📄 Description
The function filter(b, a, x) applies a rational transfer function to filter the input data array x.
This transfer function is defined by the coefficients of the numerator (b) and denominator (a).
If the first coefficient of a (a(1)) is not equal to 1, the filter normalizes the coefficients by a(1). It is crucial for a(1) to be nonzero.
When x is a vector, the function returns a vector of the same size as x containing the filtered data.
💡 Example
f = figure();
rng default
t = linspace(-pi,pi,100);
X = sin(t) + (0.33 * rand(size(t)));
windowSize = 7;
b = (1/windowSize)*ones(1,windowSize);
a = 1;
y = filter(b, a, X);
plot(t, X)
hold on
plot(t, y)
legend(_('Input Data'), _('Filtered Data'));
🔗 See also
conv.
🕔 History
Version
📄 Description
1.0.0
initial version
Last updated
Was this helpful?