I know that group delay is the delay of the envelope, or the derivative of the phase with respect to \$\omega\$. What I want to know is what exactly happens in the time domain.

For instance take the following graph of the group delay of a bessel filter (there are several curves depending on the order of the filter)

Group Delay

Consider the curve at the very top which is near the 0.6s mark, does it mean that if I inject a normalized 1.1Hz frequency into the filter, will that signal be time delayed almost 0.6s at the output? meaning that the difference in time between the output and the input at that frequency is 0.6s?

A thing that also makes me believe that the group delay means time delay is the step response. Here's the step response of the same Bessel Filter

Step response

It seems like there is a delay from the 0 second point.


The group delay is a function of frequency, so you cannot really say it's the same as the delay of a certain frequency -- that would be a particular case. Also, the step response is an infinite sum of sines plus DC, which means that the Heaviside function is not really proper to determine the group delay (since you are measuring a combined effect of group delays, given the infinite sum of sines), particularly when negative group delays come into play. Exceptions to the rule are the linear phase FIRs.

So, the correct way to determine the delay (group or phase) at a certain frequency, is to feed the filter a harmonic signal, a sine, that has, ideally, no other harmonics than the fundamental. Whether you modulate the input with a gaussian pulse, or not, depends on your approach, but modulating the pulse diminishes the possible transient settling times associated with more "unruly" magnitude reponses around the corner frequency.

For the Bessel filter, the transients of the step response are very small (it's not quite critically damped), for Gaussian they're (ideally) null, but for Butterworth and up (Papoulis, Pascal, Chebyshev, etc), and even for transitional filters (Butterworth<->Bessel), the magnitude response around the corner frequency tends to be sharper and sharper, translating into less linear phase characteristics, thus a more "wobbly" derivative of the phase.

In time domain, this can be viewed as decaying oscillations. For a sudden input, such as a step, or cosine, the output will take time to settle until a proper measurement can be made. Modulating the input with a gaussian pulse, for example, will cause the derivative of the envelope to be smooth, thus mitigating the transients.

Consider the curve at the very top which is near the 0.6s mark, does it mean that if I inject a normalized 1.1Hz frequency into the filter, will that signal be time delayed almost 0.6s at the output? meaning that the difference in time between the output and the input at that frequency is 0.6s?

If you are referring to the particular reading of 0.6ms@1.1Hz, then yes. But take note that the group delay and the phase delay are different beasts. What you are measuring is called the phase delay, that is, the delay of the phase of the signal compared to the input. This becomes more apparent for filters with less linear phase. For example a 2nd order Chebyshev, fp=1Hz, 1dB ripple, has 302ms@1Hz (group delay is the dotted trace):


If you run a time domain test with a 1Hz sine, modulated by a gaussian pulse (input is V(x)), this is what you get:


and zoomed in:


Notice that the reading says the difference is 234.67ms, which might be close to 302ms, but it's not it. If, on the other hand, we calculate the phase delay:

$$H(s)=\frac{1.1025103}{s^2+1.0977343*s+1.1025103}$$ $$t_{pd}(\omega)=-\frac{\arctan H(j\omega)}{\omega} =-\frac{\arctan\frac{1.1025103\omega}{1.1025103(1.1025103-\omega^2)}}{\omega}$$ $$t_{pd}(1\text{Hz})=\arctan\frac{1.1025103}{1.1025103^2-1)}=0.23518$$

Compare 235.18ms with 234.67ms, and you get really close, save minor misalignments of the cursors, roundings, few points/dec, etc. So you should take care what you are measuring.

I would've answered in the comments, but it deserves a bit more explanation. The Bessel filters are a happy case since they are approximations of the Laplace \$e^{-s}\$, which translates into more and more linear phase as the order goes higher. This, in turn, means constant group delay. So, at this point, you can see that the phase delay, calculated as above, means the phase divided by frequency (pulsation), which means a linear variable divided by another linear variable => constant. For the group delay, you have the derivative of a linear variable => constant. Here's how the plot of the two look like for the textbook definition of the 2nd order Bessel filter:



As you can see, both the phase delay (blue) and the group delay are flat and equal, at least until around the corner frequency, where the phase becomes less linear, thus the phase and the derivative diverge. If you increase the order to, say, 4:



The phase delay here is a bit approximated since I had to get around the atan2() quadrant limitations, but you can see that they get more similar.

So what you are measuring when you are trying to determine the single frequency input (as above) is actually the phase delay. The group delay would measuring the envelope (as you, yourself say it) of the modulated sine. Also see the paper I linked in the beginning, there are some nice explanations in there, worth reading.

I'll also give a few examples of why you cannot say that the step response gives you the "group delay" because, as stated in the beginning, the delay (phase or group) is a function of frequency and, unless you are talking about a linear phase FIR, you cannot say that a filter has a group (or phase) delay of X, or that the Heaviside function gives you the group (or phase) delay, because the delay varies with frequency.

Here's a 2nd order Bessel's step response and measure @50% rise time. Notice that the readings get closer to the DC value of the group delay as the order increases, but that number would only be an exact match if the filter had the ideal \$e^{-s}\$ transfer function, thus a constant delay from DC to light, which will never have since it is an approximation:


and the readings of the group delay at DC and corner frequency:


And here are the same two readings for an 8th order:

bs8 bf8

Just for comparison, a 5th order Chebyshev, 1dB ripple:

cs5 cf5

  • \$\begingroup\$ so what I refer as the delay of the output signal with respect to the input signal is actually the phase delay? \$\endgroup\$ – S.s. Aug 30 '18 at 2:14
  • \$\begingroup\$ @A.J. I've updated my answer. \$\endgroup\$ – a concerned citizen Aug 30 '18 at 7:29
  • \$\begingroup\$ The total delay is the sum of group Delay and Phase shift at any frequency as I explained in how to measure separately in my answer, also 0.6ms@1.1Hz, should be 0.6s \$\endgroup\$ – Sunnyskyguy EE75 Aug 30 '18 at 14:54
  • \$\begingroup\$ @TonyEErocketscientist I have never heard about such a combined delay. Could you provide a link that has an explanation? \$\endgroup\$ – a concerned citizen Aug 31 '18 at 7:49
  • \$\begingroup\$ I haven’t looked for a link but the gaussian pulse shows the phase shift in the filter and the propagation group delay of the filter is from the rate of phase change over the passband including the sine wave burst in my example. Only the envelope of the burst has the group delay or the initial delay followed by the actual steady state phase shift at that frequency. Hence total delay of a step envelope sine wave is the sum of both \$d\phi /df +\phi(f)\$ \$\endgroup\$ – Sunnyskyguy EE75 Aug 31 '18 at 14:30

Yes, that's what it means.

It means the rate of change of phase with respect to all frequencies in the passband or the carrier envelope delay, but this does not include phase delay or constant f phase shift.

More details:

How can you measure Group Delay?

Linear Slope of ΔΦ/Δf (in °/360° per Hz)

Note that in a lin-log phase scale, the slope changes due to log f( not constant slope)

  • 1) With a Spectrum Analyzer
    We can expect time shift for 1f and 2f using phase shift to get the group delay in high order filters. You can compute the 1/2 cycle phase shift and freq. difference. But the phase slope will be curved if using a log f.

enter image description here

  • 2) With a scope using an carrier burst harder way

enter image description here Ok if Group delay = envelope delay of a 1MHz signal switched on at the zero cross. What threshold is used for the group?
50% peak? no
100% peak no
1% peak? no
Since Group Delay does not include phase shift, the phase shift has to be cancelled out at the beginning of the envelope. In the above, the repeating zero crossing of the repeating cycles is projected back to the start, to indicate the end of group delay.

  • 3) With a scope using a step pulse easier and accurate enter image description here

The step function is a continuous broad spectrum input, so the GROUP DELAY is defined as the time delay to 50% amplitude of the step pulse.

You expect the Bessel Group Delay to be less than other filter types with higher Q so you expect the Step Response to change at 50% Vpk (P50).

Comparison of group delay for 3 filter types.


  • Bessel is "maximally flat group delay" is also low Q , hence lowest group delay
  • Butterworth is not critically damped. but is maximally flat magnitude filter with a symmetrical shape for passband and stopband. Yet a step response has overshoot.
  • many EE's struggle with this dilemma in PLL's or control systems with high order step response with overshoot using the wrong filter type.

Can you think why this is the case using your understanding of group Delay?

enter image description here

Rise time is related to the filter response type. Bessel gives \$\tau _r=0.34/f_{BW_{-3dB} }\$

An LC Ladder Network is \$\tau _r=0.73/f_{BW_{-3dB} }\$ which has lots (9dB) of passband ripple

enter image description here

  • \$\begingroup\$ You cannot talk about a filter having a specific group delay unless it has constant group delay all across its frequency range (like linear phase FIRs). What you define is simply the 50% rise time, or the time it takes the input to reach half its value, which is considered the time it takes the filter to respond to a stimulus, and which got to be improperly named "group delay". It's simply the response time, no different than the convention of the slope being from 10% to 90%. \$\endgroup\$ – a concerned citizen Aug 30 '18 at 7:35
  • \$\begingroup\$ I agree but I used 10th order and same f as OP ( scaled up by 1e6) to show relative differences, which all are dependent on the order of the filter and f. So I can talk about relative GD's, right? The step delay at 50% is the group delay of the continuous flat spectrum and flat phase of a step function. I hope my answer is accurate to your liking. Please edit where you think improvements are needed,. > @aconcernedcitizen \$\endgroup\$ – Sunnyskyguy EE75 Aug 30 '18 at 14:30
  • \$\begingroup\$ It doesn't matter what corner frequency you are using, that is simply a scaling that has the same spectrum, just at a different frequency. This also means that the answer doesn't change, otherwise there would be different definitions for group delay depending on the fc. I always thought that we are all here to correctly answer OP's question, not to please one viewer or another, or why should it be me who edits the question, won't that mean that I am better off answering twice? Please correct me if I am wrong. \$\endgroup\$ – a concerned citizen Aug 31 '18 at 7:48
  • \$\begingroup\$ I meant your Gaussian test not mine. But looks like I made a mistake in my assertion. TY \$\endgroup\$ – Sunnyskyguy EE75 Aug 31 '18 at 21:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.