FIR

Description

A finite impulse response (FIR) filter is a filter whose impulse response (or response to any finite length input) is of finite duration, because it settles to zero in finite time.

The impulse response (that is, the output in response to a Kronecker delta input) of an Nth-order discrete-time FIR filter lasts exactly N + 1 samples (from first nonzero element through last nonzero element) before it then settles to zero. FIR filters can be discrete-time or continuous-time, and digital or analog.

Alternatively, FIR filters in obsinfo are also commonly documented using the Coefficients class, though FIR has the advantage of allowing representation of symmetric FIR coefficients without repeating them.

For a more detailed discussion, click here.

Python class:

FIR

YAML / JSON label:

FIR

Corresponding StationXML structure

FIR

Object Hierarchy

Superclass

Filter

Subclasses

None

Relationships

Attributes

Name

Type

Required

Default

Equivalent StationXML

Remarks

symmetry

List of values:

ODD, EVEN, NONE

Y

None

Symmetry

coefficients

List of numbers

N

None

NumeratorCoefficient

coefficient_divisor

number

N

1.0

NOT USED

JSON schema

https://www.gitlab.com/resif/obsinfo/-/tree/master/obsinfo/data/schemas/filter.schema.json

https://www.gitlab.com/resif/obsinfo/-/tree/master/obsinfo/data/schemas/definitions.schema.json

Example

In filter information file https://www.gitlab.com/resif/obsinfo/-/tree/master/obsinfo/_examples/Information_Files/instrumentation/dataloggers/responses/FIR/TexasInstruments_ADS1281_FIR1.filter.yaml

--
format_version: "0.107"
filter:
   type: "FIR"
   symmetry: "NONE"
   delay.samples: 5
   coefficient_divisor: 512
   coefficients:
       - 3
       - 0
       - -25
       - 0
       - 150
       - 256
       - 150
       - 0
       - -25
       - 0
       - 3

Class Navigation

Filter <==