दो शर्तें, दो गुणांक
k+1 मुक्त गुणांक वाले एक फ़िल्टर अपने ट्रांसफर फ़ंक्शन पर बिल्कुल k+1 शर्तों को पूरा कर सकते हैं। हैमिंग ने इसे सबसे सरल गैर-तुच्छ मामले में प्रदर्शित किया: दो गुणांक, दो शर्तें।
शर्तें
- f = 1/6 पर: H(1/6) = 1 (यह आवृत्ति अपरिवर्तित रहती है)
- f = 1/3 पर: H(1/3) = 0 (यह आवृत्ति पूरी तरह से बंद है)
फ़िल्टर फॉर्म
दो गुणांक a और b के साथ एक फ़िल्टर, इनपुट x_n और एक विलंब:
y_n = a · x_n + b · x_{n−1}
आइजनफ़ंक्शन को प्रतिस्थापित करना
इनपुट e^{i2πfn}, आउटपुट H(f) · e^{i2πfn}। दाईं ओर देता है:
H(f) · e^{i2πfn} = a · e^{i2πfn} + b · e^{i2πf(n−1)}
e^{i2πfn} से विभाजित करें:
H(f) = a + b · e^{−i2πf}
अब दो समीकरणें प्राप्त करने के लिए दोनों शर्तों को लागू करें।
गुणांकों को हल करना
H(f) = a + b·e^{−i2πf} में f = 1/6 को प्रतिस्थापित करना:
1 = a + b·e^{−i2π/6} = a + b·(cos(−π/3) + i·sin(−π/3)) = a + b·(1/2 − i√3/2)
f = 1/3 को प्रतिस्थापित करना:
0 = a + b·e^{−i2π/3} = a + b·(−1/2 − i√3/2)
इन दोनों समीकरणों से, हैमिंग ने a = 1/2, b = 1/2 प्राप्त करने के लिए हल किया — जो 3-नमूना औसत के समान है (आउटपुट मध्य स्थिति में है)।
पूर्ण फ़िल्टर
जो फ़िल्टर दोनों शर्तों को संतुष्ट करता है उसका रूप है:
y_n = (x_{n−1} + x_n + x_{n+1}) / 2
n पर आउटपुट पिछले, वर्तमान, & अगले इनपुट नमूनों का उपयोग करता है।
ट्रांसफर फ़ंक्शन:
H(f) = (e^{i2πf} + 1 + e^{−i2πf}) / 2 = (2cos(2πf) + 1) / 2 = cos(2πf) + 1/2
सत्यापन:
- H(1/6) = cos(π/3) + 1/2 = 1/2 + 1/2 = 1 ✓
- H(1/3) = cos(2π/3) + 1/2 = −1/2 + 1/2 = 0 ✓
अन्य आवृत्तियों पर: H(0) = 1 + 1/2 = 3/2 (लाभ के साथ DC पास करता है), H(1/2) = −1 + 1/2 = −1/2।
अंतर्दृष्टि: एक डिजिटल फ़िल्टर सॉफ्टवेयर में लागू करता है जो एक एनालॉग RC फ़िल्टर हार्डवेयर में लागू करता है। गुणांक की पसंद आवृत्ति प्रतिक्रिया को विश्लेषणात्मक रूप से नियंत्रित करती है।
कई आवृत्तियों पर ट्रांसफर फ़ंक्शन
ट्रांसफर फ़ंक्शन H(f) = cos(2πf) + 1/2 प्रत्येक आवृत्ति पर लागू होता है, केवल दो डिज़ाइन बिंदुओं पर नहीं।
गिब्स की खोज
हैमिंग ने माइकलसन की कहानी बताई — माइकलसन-मॉर्ले प्रसिद्धि का माइकलसन — जिसने फूरियर श्रृंखला की गणना करने के लिए 75 पदों तक एक एनालॉग मशीन बनाई। जब उसने अपने गुणांकों से एक असंतत कार्य का पुनर्निर्माण किया, तो मशीन ने कूद के पास एक निरंतर ओवरशूट दिखाया।
माइकलसन ने स्थानीय गणितज्ञों से पूछा। उन्होंने उपकरण को दोष दिया। केवल गिब्स सुने।
गिब्स घटना: जब एक फूरियर श्रृंखला N पदों तक काटी गई हो तो एक चरण असंतत्ता का अनुमान लगाती है, अनुमान कूद की ऊंचाई के लगभग 8.9% से अधिक हो जाता है — और यह ओवरशूट जैसे-जैसे N बढ़ता है वैसे घटता नहीं है। अधिक पद ओवरशूट स्पाइक को संकीर्ण करते हैं लेकिन कभी इसे समाप्त नहीं करते।
गणितीय रूप से: N-पद फूरियर श्रृंखला असंतत्ता को छोड़कर हर जगह बिंदुवार परिवर्तित होती है। असंतत्ता पर, आंशिक योग कूद के मध्यबिंदु में परिवर्तित होता है, लेकिन आंशिक योग का अधिकतम कूद के पास 1.0 नहीं बल्कि 1.0895 (एक इकाई-ऊंचाई चरण के लिए) तक पहुंचता है।
फ़िल्टर के लिए क्यों महत्वपूर्ण है
एक आदर्श लोपास फ़िल्टर में एक चरण कार्य ट्रांसफर फ़ंक्शन है: H(f) = 1 f < f_c के लिए, H(f) = 0 f > f_c के लिए। पासबैंड & स्टॉपबैंड के बीच यह असंतत्ता का अर्थ है कि कोई भी परिमित-लंबाई फ़िल्टर (काटी गई फूरियर श्रृंखला) अपनी आवृत्ति प्रतिक्रिया में गिब्स तरंग प्रदर्शित करता है।
परिणाम: काटी गई फूरियर श्रृंखला डिज़ाइन पासबैंड & स्टॉपबैंड दोनों में लगभग 9% तरंग के साथ फ़िल्टर उत्पन्न करता है, भले ही कितने गुणांक का उपयोग किया जाए।
गिब्स घटना के निहितार्थ
हैमिंग ने विंडो फ़ंक्शन को प्रेरित करने के लिए इस परिणाम का उपयोग किया: आदर्श फूरियर गुणांकों को एक चिकनी टेपर करने वाली विंडो से गुणा करना गिब्स ओवरशूट को नाटकीय रूप से कम करता है।
हैमिंग विंडो: w_k = 0.54 + 0.46·cos(πk/N)। यह विंडो गिब्स तरंग को 0.2% से कम में कम करता है।
ट्रेड-ऑफ: विंडोइंग संक्रमण को चिकना करता है लेकिन संक्रमण बैंड को चौड़ा करता है। तीव्र कटऑफ हमेशा अधिक गुणांक की आवश्यकता होती है।