ada kelas filter FIR yang disebut filter "Truncated IIR" (TIIR). Anda dapat google itu dan Anda akan menemukan barang-barang dari Julius Smith dan Avery Wang. contoh lain dari filter TIIR adalah jumlah Moving Moving atau Moving Average atau CIC filter (semua nama yang cukup berbeda untuk hal yang sama). apa yang membuat filter rekursif ini FIR adalah pembatalan kutub-nol. seperti yang diterapkan, ada kutub internal dan jika mereka tidak stabil, filter bisa meledak di dalam, tetapi Anda tidak akan melihatnya di output sampai batas numerik terlampaui.
robert bristow-johnson
1
berapakah batas numeriknya?
Black Yasmin
tergantung pada tipe numerik (float atau fixed) dan lebar kata. barang ini bisa dilihat. . (katakanlah, untuk IEEE-754 mengapung untuk tetap, itu tergantung pada berapa banyak bit, , yang tersisa dari titik biner; kira-kira ± 2 n I - 1 .nsaya± 2nsaya- 1
robert bristow-johnson
terima kasih lagi tuan atas bantuannya! sangat membantu saya senang saya menemukan situs web ini
Black Yasmin
2
@AnthonyParks: Anda berkata : " mengapa orang membuat ini rumit .. ini jelas merupakan IIR karena istilah pertama dari filter memiliki bagian umpan balik. "? Saya berkata : " mengapa orang tidak repot-repot memahami konsep dasar DSP "? Filter IIR selalu menyiratkan bentuk rekursif, tetapi FIR tidak perlu berarti bahwa filter tersebut non-rekursif. Itulah satu-satunya jawaban yang benar dan Anda membingungkan konsep di sini. Jika itu adalah pertanyaan ujian, Anda akan gagal dengan mengatakan itu adalah IIR. Oppenheim menjelaskan topik ini dalam bukunya tentang DSP.
jojek
Jawaban:
18
Ini adalah filter FIR , meskipun terlihat seperti IIR. Jika Anda menghitung koefisien yang Anda dapatkan respon impuls terbatas:
h=[1]
Ini terjadi karena pembatalan nol-tiang:
Y(z)−0.5Y(z)z−1=X(z)−0.5X(z)z−1
H(z)=Y(z)X(z)=1−0.5z−11−0.5z−1=1
Ya, itu bisa rumit. Melihat koefisien dalam LCCDE (Persamaan Perbedaan Koefisien Konstan Linier) tidak selalu berarti itu adalah filter IIR. Ini mungkin hanya filter FIR rekursif.y[n−k]
terima kasih atas pengakuannya! Saya tertipu untuk mengatakan IIR, tanpa pernah melihat dengan hati-hati pada koefisien ... Saya menghapus jawaban saya.
Fat32
Namun, jika Anda menerapkan persamaan seperti yang dinyatakan sebelumnya, itu tidak akan berperilaku tepat seperti H (z) = 1 karena efek panjang kata hingga (meskipun pembatalan kutub-nol tepat dalam kasus ini).
Oscar
Itu benar @Oscar, tetapi ini adalah masalah numerik yang tidak ada hubungannya dengan filter yang menjadi F / IIR.
jojek
1
@ jojek: Anda tentu saja benar sepenuhnya. Namun, menggunakan filter FIR rekursif menyebabkan sedikit masalah jika Anda tidak mengetahui hal-hal ini (yang banyak, bahkan peneliti "berkualitas tinggi"). Makanya, komentar saya. Idealnya harus ada diskusi tentang algoritma vs fungsi transfer juga.
Oscar
jojek saya membaca jawaban Anda dari pertanyaan yang Anda jawab tetapi saya tidak bisa berkomentar. dsp.stackexchange.com/questions/17605/… dapatkah saya menggunakan jendela berbeda?
Black Yasmin
14
Jawaban Jojek tentu saja benar. Saya hanya ingin menambahkan beberapa informasi karena terlalu sering saya melihat istilah "IIR" dan "rekursif" bingung. Implikasi berikut ini selalu berlaku:
IIRnon-recursive⟹recursive⟹FIR
yaitu setiap filter IIR (yaitu filter waktu diskrit yang memiliki respons impuls sangat panjang) harus diimplementasikan secara rekursif (kecuali Anda memiliki memori tak terbatas), dan setiap sistem LTI non-rekursif memiliki respons impuls terbatas (sekali lagi, kecuali Anda memiliki infinite Penyimpanan).
Namun, kebalikannya umumnya tidak benar. Filter rekursif dapat memiliki respons impuls terbatas, seperti halnya contoh dalam pertanyaan. Contoh terkenal lainnya adalah filter rata-rata bergerak. Ini implementasi non-rekursif rata-rata bergerak (tentu saja FIR):
Ringkas dan akurat seperti biasa, +1;) Terima kasih telah membuka kasus MA.
jojek
1
@ jojek: ya, saya pikir ini klasik yang harus diketahui semua orang.
Matt L.
Dan sementara saya terutama berpikir tentang kebisingan di komentar untuk jawaban jojek, untuk MA, melimpah akan menjadi masalah potensial yang perlu dipertimbangkan dengan hati-hati. Mudah dipecahkan oleh aritmatika komplemen dua dan panjang kata yang cukup.
Oscar
1
@Oscar: Ya, setelah melakukan analisis yang sangat sederhana dengan presisi floating point ganda, saya mendapatkan kesalahan 8.881784197001252e-16 . Ini setelah memproses setara dengan 1 tahun audio pada frekuensi sampling 44,1 kHz. Input data adalah noise Gaussian dengan distribusi dinormalisasi. Ini kode untuk mereproduksi hasilnya ! Klik! (mungkin butuh 3 hari untuk menjalankan). Memberikan ini benar, maka saya percaya tidak ada yang perlu dikhawatirkan.
jojek
1
@ jojek: Tiga hal. 1) Saya merujuk pada filter rata-rata bergerak dari jawaban, bukan yang ada di pertanyaan awal. 2) Ya, itu OK untuk audio (tapi tidak tepat, jadi tidak ada alasan untuk menuliskan "tidak" dalam huruf tebal), tapi saya lebih suka pemrosesan sinyal kritis keselamatan saya untuk bekerja independen dari sinyal input yang memiliki sifat sintetis. 3) Hal yang menarik adalah bahwa filter yang Anda simulasi tidak akan memiliki masalah yang saya jelaskan (karena kutub ada di dalam lingkaran unit, bukan di atasnya), tetapi akan selalu memiliki kesalahan pembulatan yang tidak bergantung pada representasi (yang dapat dihindari dalam moving average case).
Jawaban:
Ini adalah filter FIR , meskipun terlihat seperti IIR. Jika Anda menghitung koefisien yang Anda dapatkan respon impuls terbatas:
Ini terjadi karena pembatalan nol-tiang:
Ya, itu bisa rumit. Melihat koefisien dalam LCCDE (Persamaan Perbedaan Koefisien Konstan Linier) tidak selalu berarti itu adalah filter IIR. Ini mungkin hanya filter FIR rekursif.y[n−k]
sumber
Jawaban Jojek tentu saja benar. Saya hanya ingin menambahkan beberapa informasi karena terlalu sering saya melihat istilah "IIR" dan "rekursif" bingung. Implikasi berikut ini selalu berlaku:
yaitu setiap filter IIR (yaitu filter waktu diskrit yang memiliki respons impuls sangat panjang) harus diimplementasikan secara rekursif (kecuali Anda memiliki memori tak terbatas), dan setiap sistem LTI non-rekursif memiliki respons impuls terbatas (sekali lagi, kecuali Anda memiliki infinite Penyimpanan).
Namun, kebalikannya umumnya tidak benar. Filter rekursif dapat memiliki respons impuls terbatas, seperti halnya contoh dalam pertanyaan. Contoh terkenal lainnya adalah filter rata-rata bergerak. Ini implementasi non-rekursif rata-rata bergerak (tentu saja FIR):
sumber