Lõplik impulsskoste filter

**Lõpliku impulsskoste filter** (inglise keeles *[[:en:Finite_impulse_response|finite impulse response]]* ehk *FIR-filter*) on signaalitöötluses kasutatav filter, mille kasutades esineb signaali lõplik siirdumine null väärtusele. Erinedes lõpmatu impulsskostega filtritest (inglise keeles *[[:en:Infinite_impulse_response|infinite impulse response]] ehk IIR-filter*), mis võivad sisaldada sisemist tagasisidet ning kesta igavesti (üldiselt kahanevas suunas). Tänu piiratud sisendandmete hulgale ei saa lõpliku impulsskostega filtri tulemus muutuda ebastabiilseks ehk lõppsignaal pole võimeline iseseisvalt ostsilleeruma. 

Selle filtri N-pikkusega impulskoste kestab diskreetses ajaruumis täpselt N+1 ajahetke. Alates esimesest nullist erinevast impulsist kuni viimase nullist erineva impulsini, taandudes lõpuks tagasi null väärtusele.

## Definitsioon
Diskreetses ajaruumis on tegemist sisendsignaali- ja filtri-elementide korrutamisega ning tulemuste summeerimisega.

y[n]=b_0\cdot x[n]+b_1\cdot x[n-1] +...+b_N\cdot x[n-N] = \sum_{i=0}^N b_i \cdot x[n-i]

* kus x[n] on sisendsignaal indeksiga kohal n
* N on filtri pikkus
* b_i on filtri impulsskoste väärtus indeksil i, kus 0\le i\le N
* y[n] on lõppväljund

Märkame, et tegemist on konvolutsiooni valemiga.

y[n]=h_0\cdot x[n]+h_1\cdot x[n-1] +...+h_N\cdot x[n-N] = \sum_{i=0}^N h_i \cdot x[n-i]

* kus x[n] on sisendsignaal indeksiga kohal n
* N on filtri pikkus
* h_i on filtri impulsskoste väärtus indeksil i, kus 0\le i\le N
* y[n] on lõppväljund

Filtri impulsskoste väärtus on määratletud kui nullist suurem väärtus vaadeldavas vahemikus.

## Omadused
FIR filtri rakendamisel on mitmeid eeliseid IIR filtri üle, näiteks:

* FIR filtrid on enamasti mitte korduvad filtrid ehk neil puuduvad tagasiside ahelad, kuid mõned variatsioonid võivad sisaldada ka tagasisidet. Tagasiside puudumisel on iteratsioonidel tekkinud ümardamisvead.
* Kuna lõpptulemus koosneb määratud hulga elementide ja nende kordajate summast, on tulemus alati stabiilne. Kus kõige suurem tulemus on alati \sum |b_i| korda kõige suurem impulss signaalis.
* Filtrit on kerge vaevaga võimalik luua lineaarkujule.

Miinuseks võib lugeda suure arvutusvõimekuse vajaduse, mis tuleb rohkem ette madalate sageduste töötlemisel (olenedes diskreetimissagedusest). Olles nõudlikumad kui IIR filtrid, võib FIR filtri rakendamine tunduda ebavajalik. Kuid tänu mitmele digitaal signaalitöötlus protsessorile, mis sisaldavad spetsiifilist riistvara, on võimalik kasutada FIR filtreid peaaegu sama efektiivselt kui sarnaseid IIR filtreid.

## Kasutusalad
FIR filtreid kasutatakse nii analoog- kui digitaalruumis. Analoogselt FIR filtri rakendamine on harvem levinud nähtus, peamiselt tulemuse madala täpsuse tõttu. Digitaalkujul signaalitöötluses FIR filtrite rakendamine on rohkem levinud:

* Madalpääsfilter ehk LPF (inglise keeles *Low Pass Filter*) laseb läbi mahalõikesagedusest madalamad sagedused ning kõrgemad signaalid tõrjutakse.
* Kõrgpääsfilter ehk HPF (inglise keeles *High Pass Filter*) laseb läbi mahalõikesagedusest kõrgemad sagedused ning madalamad signaalid tõrjutakse.
* BPF (inglise keeles *Berkley Packet Filter*) kasutatakse kindlates operatsioonisüsteemides näiteks võrgu paketianalüüsis.
* Ribatõkkefilter ehk BSF (inglise k. *Band-stop Filter*) blokeerib kindla sagedusvahemiku signaalid, kuid jätab ülejäänud signaalid puutumata.

Filter on kasutatav nii ajadomeenis kui ka sagedusruumis. 

## Liikuva keskmise näide
Liikuva keskmise filter on üks kasutajasõbralikumaid filtreid, mida kasutatakse tihtipeale andmete silumisel. Lihtsalt lahtiseletatuna on LKF akna suuruse jagu andmepunktide summeerimine ning hiljem läbi jagamine akna suurusega. 

Valemina näeks filter välja järgmine: y[n] = \frac{1}{M}\textstyle \sum_{m=0}^{M-1} \displaystyle x[n-m]

* y[n] on väljundsignaal indeksiga kohal n
* M on akna suurus
* x[n] on sisendsignaal indeksiga kohal n
* m on eelmise elemendi indeks

Võttes aluseks näiteks 7 päeva andmed elektrihindade kohta, kus iga tund on hind uuendatud, võib vaadeldav graafik esitatud olla järskude muutustega. Selle järgi on raske hinnata, mis oli näiteks päeva keskmine elektrihind. Rakendades LKF filtrit aknasuurusega 24 (kuna päevas on 24 tundi), saame silutud graafikul ülevaate kuidas hind muutus päevast päeva mugavamalt, kui käsitsi arvutades. 

Filtri kuju z domeenis näeks välja järgmine: T(z) = \frac{(1+\frac{1}{z}+\frac{1}{z^2}+\frac{1}{z^3}+... +\frac{1}{z^M})}{M+1} 
## Viited