Discrete FIR Filter
FIR filter model.
Description
Block Discrete FIR Filter filters each channel of the input signal with a specified digital FIR filter. The unit can implement static filters with fixed coefficients.
This block filters each input signal channel independently in time.
The output signal size is equal to the input signal size, unless you specify a filter matrix for the parameters Coefficients. In this case, the output dimensions depend on the number of filter sets specified.
Specifying initial states
Block Discrete FIR Filter by default initialises with zero the internal filter states responsible for the signal values at the previous steps. This is equivalent to assuming that past inputs and outputs are zero. You can use the parameters *Initial states*parameter to set non-zero initial conditions for filter delays.
To determine the number of initial states to set and how to set them, see the table of acceptable initial states. parameters Initial states can take one of the forms described in the following table.
Initial state | Description |
---|---|
Scalar |
The block initialises all delay elements in the filter with a scalar value |
Vector |
If the vector consists of a single value, all delay elements in the filter are initialised with this value in the same way as a scalar. Otherwise, the length of the vector must be equal to the number of delay elements in the filter. |
Matrix |
The number of rows of the matrix must be equal to the number of delay elements in the filter. If the matrix has one column, it applies to all channels of the input signal, otherwise each column must correspond to a different channel. |
Ports
Input
#
IN_1
—
input signal
scalar
| vector
| matrix
| multidimensional array
Details
An input signal specified as a scalar, vector, matrix or array with any number of dimensions.
Block Discrete FIR Filter accepts real and complex signals of any numeric data type supported by Engee.
Data types |
|
Complex numbers support |
No |
Output
#
OUT_1
—
filtered signal
scalar
| vector
| matrix
| multidimensional array
Details
Filtered output signal.
Block Discrete FIR Filter outputs real and complex signals of any numeric data type supported by Engee.
When the parameters are set to -1
, the interval between the output signal calculation steps coincides with the interval of the input signal IN_1. Sample time value -1
, the interval between steps of the output signal calculation coincides with the interval of the input signal IN_1.
Data types |
|
Complex numbers support |
No |
Parameters
Main
#
Coefficients —
filter coefficients
Scalar / array of real numbers
Details
Specify a vector of coefficients for the transfer function. The filter coefficients must be specified as a string vector. If you specify a vector-string of filter coefficients, the block applies a single filter to the input. To apply multiple filters to the same input, specify a coefficient matrix where each row represents a different set of filter coefficients.
Default value |
|
Program usage name |
|
Tunable |
Yes |
Evaluatable |
Yes |
#
Initial states —
initial states of the filter
Scalar / array of real numbers
Details
Filter initial states as a scalar, vector, or matrix. See Specifying Initial States for details.
Default value |
|
Program usage name |
|
Tunable |
Yes |
Evaluatable |
Yes |
#
Sample time —
interval between calculation steps
SampleTime (real number / vector of two real numbers)
Details
Specify the interval between calculation steps as a non-negative number. To inherit a calculation step, set this parameters to -1
.
Default value |
|
Program usage name |
|
Tunable |
No |
Evaluatable |
Yes |