Hi, I see expressed in many tests as dogma, that in order to have a linear phase system or filter, the inpulse response of the filter needs to be symetrical. However, I don't really see this explained anywhere. Can someone point me to a reference in the literature? Thank You Tom
How is it that a symmetrical impulse response produces a linear phase delay?
Started by ●April 10, 2009
Reply by ●April 10, 20092009-04-10
On 10 Apr., 23:17, "miner_tom" <tom_cip_11...@hotmail.com> wrote:> Hi, > > I see expressed in many tests as dogma, that in order to have a linear phase > system or filter, the inpulse response of the filter needs to be symetrical. > However, I don't really see this explained anywhere. Can someone point me to > a reference in the literature?It was recently discussed. Search this group for the thread "group delay of FIR filter". It contains a proof for such filters having a constant group delay which implies linear phase. Cheers! SG
Reply by ●April 10, 20092009-04-10
On Apr 10, 5:17�pm, "miner_tom" <tom_cip_11...@hotmail.com> wrote:> Hi, > > I see expressed in many tests as dogma, that in order to have a linear phase > system or filter, the inpulse response of the filter needs to be symetrical. > However, I don't really see this explained anywhere. Can someone point me to > a reference in the literature? > > Thank You > TomIt's pretty simple. Do the math (discrete-time Fourier transform of the symetric impulde response). spamfree
Reply by ●April 11, 20092009-04-11
On 10 Apr, 23:17, "miner_tom" <tom_cip_11...@hotmail.com> wrote:> Hi, > > I see expressed in many tests as dogma, that in order to have a linear phase > system or filter, the inpulse response of the filter needs to be symetrical. > However, I don't really see this explained anywhere. Can someone point me to > a reference in the literature?This is discussed in medium-level textbooks on DSP, like the one by Proakis & Manolakis. Oppenheim & Schafer's medium-level book would also contain this proof. However, they have co-authored several DSP texts, and I don't know which is the medium-level one. Rune
Reply by ●April 11, 20092009-04-11
miner_tom wrote:> Hi, > > I see expressed in many tests as dogma, that in order to have a > linear phase system or filter, the inpulse response of the filter > needs to be symetrical. However, I don't really see this explained > anywhere. Can someone point me to a reference in the literature? > > Thank You > TomTom, I *think* you can construct a proof very simply like this: We're going to use superposition here.. For an odd-length filter start with the one unique center coefficient. Build a filter with a number of delays preceding just the one coefficient in the right delay spot. This is a simple filter with just one coefficient providing a pure delay. You should be able to prove that a pure delay corresponds to linear phase. For and even-length filter, there's no unique center coefficient. So, read on. The rest applies to either type. Now, select the two equal coefficients that are immediately adjacent to the center coefficient (odd) or the two equal coefficients that are center-most in the filter (even). Build a filter with a number of delays preceding these two coefficients in the right delay spots. This is also a simple filter with just two equal coefficients providing the sum of two delays. To analyze this one, you might want to mentally center it at zero time. Now you have a pure delay added to a pure "advance" with the same magnitudes. You should be able to prove that such a sum has no phase impact at all - no matter the frequency. Then, if you delay it out to where it "belongs" in time, you're adding a pure delay again that's no different than the delay of the center of the filter. You mentally put the second filter in parallel with the first filter to get a composite filter by superposition. The resulting delay of both filters is exactly the same. If it isn't, then you didn't build them right!! :-) Then you continue adding 2-coefficient filters in parallel - which are treated the same as the last one above. Fred
Reply by ●April 11, 20092009-04-11
Fred Marshall wrote:> miner_tom wrote: >> Hi, >> >> I see expressed in many tests as dogma, that in order to have a >> linear phase system or filter, the inpulse response of the filter >> needs to be symetrical. However, I don't really see this explained >> anywhere. Can someone point me to a reference in the literature? >> >> Thank You >> Tom > > Tom, > > I *think* you can construct a proof very simply like this: > > We're going to use superposition here.. > > For an odd-length filter start with the one unique center coefficient. > Build a filter with a number of delays preceding just the one coefficient in > the right delay spot. > This is a simple filter with just one coefficient providing a pure delay. > You should be able to prove that a pure delay corresponds to linear phase. > > For and even-length filter, there's no unique center coefficient. So, read > on. The rest applies to either type. > > Now, select the two equal coefficients that are immediately adjacent to the > center coefficient (odd) or the two equal coefficients that are center-most > in the filter (even). > Build a filter with a number of delays preceding these two coefficients in > the right delay spots. > This is also a simple filter with just two equal coefficients providing the > sum of two delays. > To analyze this one, you might want to mentally center it at zero time. > Now you have a pure delay added to a pure "advance" with the same > magnitudes. > You should be able to prove that such a sum has no phase impact at all - no > matter the frequency. > Then, if you delay it out to where it "belongs" in time, you're adding a > pure delay again that's no different than the delay of the center of the > filter. > > You mentally put the second filter in parallel with the first filter to get > a composite filter by superposition. > The resulting delay of both filters is exactly the same. If it isn't, then > you didn't build them right!! :-) > > Then you continue adding 2-coefficient filters in parallel - which are > treated the same as the last one above.Fred, i don't think this is rigorous, but it works out. Consider a filter with dispersion. Some components are delayed more than others when a signal is passed through. If the signal is reversed and passed through again, those same components are delayed again by precisely the same amount. Since the signal is reversed, the delay amounts to an advance in the original direction, thereby canceling the delay from the first pass. Since a symmetrical filter will have the same effect on a signal whichever direction the signal passes, it must avoid dispersion. Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
Reply by ●April 12, 20092009-04-12
Jerry Avins wrote:> Fred Marshall wrote: >> miner_tom wrote: >>> Hi, >>> >>> I see expressed in many tests as dogma, that in order to have a >>> linear phase system or filter, the inpulse response of the filter >>> needs to be symetrical. However, I don't really see this explained >>> anywhere. Can someone point me to a reference in the literature? >>> >>> Thank You >>> Tom >> >> Tom, >> >> I *think* you can construct a proof very simply like this: >> >> We're going to use superposition here.. >> >> For an odd-length filter start with the one unique center >> coefficient. Build a filter with a number of delays preceding just >> the one coefficient in the right delay spot. >> This is a simple filter with just one coefficient providing a pure >> delay. You should be able to prove that a pure delay corresponds to >> linear phase. For and even-length filter, there's no unique center >> coefficient. So, read on. The rest applies to either type. >> >> Now, select the two equal coefficients that are immediately adjacent >> to the center coefficient (odd) or the two equal coefficients that >> are center-most in the filter (even). >> Build a filter with a number of delays preceding these two >> coefficients in the right delay spots. >> This is also a simple filter with just two equal coefficients >> providing the sum of two delays. >> To analyze this one, you might want to mentally center it at zero >> time. Now you have a pure delay added to a pure "advance" with the same >> magnitudes. >> You should be able to prove that such a sum has no phase impact at >> all - no matter the frequency. >> Then, if you delay it out to where it "belongs" in time, you're >> adding a pure delay again that's no different than the delay of the >> center of the filter. >> >> You mentally put the second filter in parallel with the first filter >> to get a composite filter by superposition. >> The resulting delay of both filters is exactly the same. If it >> isn't, then you didn't build them right!! :-) >> >> Then you continue adding 2-coefficient filters in parallel - which >> are treated the same as the last one above. > > Fred, > > i don't think this is rigorous, but it works out. > > Consider a filter with dispersion. Some components are delayed more > than others when a signal is passed through. If the signal is > reversed and passed through again, those same components are delayed > again by precisely the same amount. Since the signal is reversed, the > delay amounts to an advance in the original direction, thereby > canceling the delay from the first pass. > > Since a symmetrical filter will have the same effect on a signal > whichever direction the signal passes, it must avoid dispersion. > > JerryJerry, Yes, I think these amount to the same thing. My hope was that the OP might apply some math to the words - having created a simple model to work from. e.g. An advance/delay in time is expressed in frequency as: f(t - t0) <-> F(w)e^(-jwt0) So, we have, resulting from each pair of "matching" coefficients: f(t - t0) + f(t + t0) <-> F(w)e^(-jwt0) + F(w)e^(jwt0) which simplifies to: F(w)*e^0 = F(w) [you can apply any multiplicative factor that you wish] And, if there's an overall delay involved (which there would be in the real world), let's call it D, then there's just an added term e^-jwD which varies linearly with frequency ... thus linear phase. Fred
Reply by ●April 12, 20092009-04-12
Fred Marshall wrote:> Jerry Avins wrote: >> Fred Marshall wrote: >>> miner_tom wrote: >>>> Hi, >>>> >>>> I see expressed in many tests as dogma, that in order to have a >>>> linear phase system or filter, the inpulse response of the filter >>>> needs to be symetrical. However, I don't really see this explained >>>> anywhere. Can someone point me to a reference in the literature? >>>> >>>> Thank You >>>> Tom >>> Tom, >>> >>> I *think* you can construct a proof very simply like this: >>> >>> We're going to use superposition here.. >>> >>> For an odd-length filter start with the one unique center >>> coefficient. Build a filter with a number of delays preceding just >>> the one coefficient in the right delay spot. >>> This is a simple filter with just one coefficient providing a pure >>> delay. You should be able to prove that a pure delay corresponds to >>> linear phase. For and even-length filter, there's no unique center >>> coefficient. So, read on. The rest applies to either type. >>> >>> Now, select the two equal coefficients that are immediately adjacent >>> to the center coefficient (odd) or the two equal coefficients that >>> are center-most in the filter (even). >>> Build a filter with a number of delays preceding these two >>> coefficients in the right delay spots. >>> This is also a simple filter with just two equal coefficients >>> providing the sum of two delays. >>> To analyze this one, you might want to mentally center it at zero >>> time. Now you have a pure delay added to a pure "advance" with the same >>> magnitudes. >>> You should be able to prove that such a sum has no phase impact at >>> all - no matter the frequency. >>> Then, if you delay it out to where it "belongs" in time, you're >>> adding a pure delay again that's no different than the delay of the >>> center of the filter. >>> >>> You mentally put the second filter in parallel with the first filter >>> to get a composite filter by superposition. >>> The resulting delay of both filters is exactly the same. If it >>> isn't, then you didn't build them right!! :-) >>> >>> Then you continue adding 2-coefficient filters in parallel - which >>> are treated the same as the last one above. >> Fred, >> >> i don't think this is rigorous, but it works out. >> >> Consider a filter with dispersion. Some components are delayed more >> than others when a signal is passed through. If the signal is >> reversed and passed through again, those same components are delayed >> again by precisely the same amount. Since the signal is reversed, the >> delay amounts to an advance in the original direction, thereby >> canceling the delay from the first pass. >> >> Since a symmetrical filter will have the same effect on a signal >> whichever direction the signal passes, it must avoid dispersion. >> >> Jerry > > Jerry, > > Yes, I think these amount to the same thing. My hope was that the OP might > apply some math to the words - having created a simple model to work from. > > e.g. > > An advance/delay in time is expressed in frequency as: > f(t - t0) <-> F(w)e^(-jwt0) > So, we have, resulting from each pair of "matching" coefficients: > > f(t - t0) + f(t + t0) <-> F(w)e^(-jwt0) + F(w)e^(jwt0) > which simplifies to: F(w)*e^0 = F(w) > [you can apply any multiplicative factor that you wish] > > And, if there's an overall delay involved (which there would be in the real > world), let's call it D, then there's just an added term e^-jwD which varies > linearly with frequency ... thus linear phase.There's a deeper reason than the ones we put forward. Antisymmetry also yields constant group delay. Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
Reply by ●April 12, 20092009-04-12
Jerry Avins wrote:> Fred Marshall wrote: >> Jerry Avins wrote: >>> Fred Marshall wrote: >>>> miner_tom wrote: >>>>> Hi, >>>>> >>>>> I see expressed in many tests as dogma, that in order to have a >>>>> linear phase system or filter, the inpulse response of the filter >>>>> needs to be symetrical. However, I don't really see this explained >>>>> anywhere. Can someone point me to a reference in the literature? >>>>> >>>>> Thank You >>>>> Tom >>>> Tom, >>>> >>>> I *think* you can construct a proof very simply like this: >>>> >>>> We're going to use superposition here.. >>>> >>>> For an odd-length filter start with the one unique center >>>> coefficient. Build a filter with a number of delays preceding just >>>> the one coefficient in the right delay spot. >>>> This is a simple filter with just one coefficient providing a pure >>>> delay. You should be able to prove that a pure delay corresponds to >>>> linear phase. For and even-length filter, there's no unique center >>>> coefficient. So, read on. The rest applies to either type. >>>> >>>> Now, select the two equal coefficients that are immediately >>>> adjacent to the center coefficient (odd) or the two equal >>>> coefficients that are center-most in the filter (even). >>>> Build a filter with a number of delays preceding these two >>>> coefficients in the right delay spots. >>>> This is also a simple filter with just two equal coefficients >>>> providing the sum of two delays. >>>> To analyze this one, you might want to mentally center it at zero >>>> time. Now you have a pure delay added to a pure "advance" with the >>>> same magnitudes. >>>> You should be able to prove that such a sum has no phase impact at >>>> all - no matter the frequency. >>>> Then, if you delay it out to where it "belongs" in time, you're >>>> adding a pure delay again that's no different than the delay of the >>>> center of the filter. >>>> >>>> You mentally put the second filter in parallel with the first >>>> filter to get a composite filter by superposition. >>>> The resulting delay of both filters is exactly the same. If it >>>> isn't, then you didn't build them right!! :-) >>>> >>>> Then you continue adding 2-coefficient filters in parallel - which >>>> are treated the same as the last one above. >>> Fred, >>> >>> i don't think this is rigorous, but it works out. >>> >>> Consider a filter with dispersion. Some components are delayed more >>> than others when a signal is passed through. If the signal is >>> reversed and passed through again, those same components are delayed >>> again by precisely the same amount. Since the signal is reversed, >>> the delay amounts to an advance in the original direction, thereby >>> canceling the delay from the first pass. >>> >>> Since a symmetrical filter will have the same effect on a signal >>> whichever direction the signal passes, it must avoid dispersion. >>> >>> Jerry >> >> Jerry, >> >> Yes, I think these amount to the same thing. My hope was that the >> OP might apply some math to the words - having created a simple >> model to work from. e.g. >> >> An advance/delay in time is expressed in frequency as: >> f(t - t0) <-> F(w)e^(-jwt0) >> So, we have, resulting from each pair of "matching" coefficients: >> >> f(t - t0) + f(t + t0) <-> F(w)e^(-jwt0) + F(w)e^(jwt0) >> which simplifies to: F(w)*e^0 = F(w) >> [you can apply any multiplicative factor that you wish] >> >> And, if there's an overall delay involved (which there would be in >> the real world), let's call it D, then there's just an added term >> e^-jwD which varies linearly with frequency ... thus linear phase. > > There's a deeper reason than the ones we put forward. Antisymmetry > also yields constant group delay. > > JerryYes, but antisymmetry wasn't part of the question :-) Yet, it's an important part of answering the question I should think. It changes the expressions above to: f(t - t0) - f(t + t0) <-> F(w)e^(-jwt0) - F(w)e^(jwt0)>> which simplifies to: F(w)*e^-jw*e^(t0-t0) = F(w)*e^jwand, if we select D to be 1, then it becomes F(w)*e^jw*e^-jwD = F(w) If that's not correct, then it's close.... Fred
Reply by ●April 21, 20092009-04-21
On Fri, 10 Apr 2009 22:59:14 -0700 (PDT), Rune Allnor <allnor@tele.ntnu.no> wrote:>On 10 Apr, 23:17, "miner_tom" <tom_cip_11...@hotmail.com> wrote: >> Hi, >> >> I see expressed in many tests as dogma, that in order to have a linear phase >> system or filter, the inpulse response of the filter needs to be symetrical. >> However, I don't really see this explained anywhere. Can someone point me to >> a reference in the literature? > >This is discussed in medium-level textbooks on DSP, >like the one by Proakis & Manolakis. Oppenheim & >Schafer's medium-level book would also contain this >proof. However, they have co-authored several DSP >texts, and I don't know which is the medium-level one. > >RuneYep, Oppenheim & Schafer (& Buck) discuss this on pages 292-295 in the 2nd Eidtion of their book. [-Rick-]






