grpdelay  R Documentation 
The group delay of a filter or model. The group delay is the time delay for a sinusoid at a given frequency.
## Default S3 method:
grpdelay(filt, a = 1, n = 512, whole = FALSE, Fs = NULL, ...)
## S3 method for class 'Arma'
grpdelay(filt, ...)
## S3 method for class 'Ma'
grpdelay(filt, ...)
## S3 method for class 'Zpg'
grpdelay(filt, ...)
## S3 method for class 'grpdelay'
plot(x, xlab = if(x$HzFlag) 'Hz' else 'radian/sample',
ylab = 'Group delay (samples)', type = "l", ...)
## S3 method for class 'grpdelay'
print(x, ...)
filt 
for the default case, the movingaverage coefficients of
an ARMA model or filter. Generically, 
a 
the autoregressive (recursive) coefficients of an ARMA filter. 
n 
number of points at which to evaluate the frequency response. 
whole 

Fs 
sampling frequency in Hz. If not specified, the frequencies are in radians. 
x 
object to be plotted. 
xlab , ylab , type 
as in 
... 
for methods of 
For fastest computation, n
should factor into a small number of
small primes.
If the denominator of the computation becomes too small, the group delay is set to zero. (The group delay approaches infinity when there are poles or zeros very close to the unit circle in the z plane.)
When results of grpdelay
are printed, the group delay will be
plotted. As with lattice
plots, automatic printing does not work
inside loops and function calls, so explicit calls to print
or
plot
are needed there.
A list of class grpdelay
with items:
gd 
the group delay, in units of samples. It can be converted
to seconds by multiplying by the sampling period (or dividing by
the sampling rate 
w 
frequencies at which the group delay was calculated. 
ns 
number of points at which the group delay was calculated. 
HzFlag 

Original Octave version by Julius O. Smith III and Paul Kienzle. Conversion to R by Tom Short.
https://ccrma.stanford.edu/~jos/filters/Numerical_Computation_Group_Delay.html
https://en.wikipedia.org/wiki/Group_delay
Octave Forge https://octave.sourceforge.io/
filter
, Arma
, freqz
# Two Zeros and Two Poles
b < poly(c(1/0.9*exp(1i*pi*0.2), 0.9*exp(1i*pi*0.6)))
a < poly(c(0.9*exp(1i*pi*0.6), 1/0.9*exp(1i*pi*0.2)))
gpd < grpdelay(b, a, 512, whole = TRUE, Fs = 1)
print(gpd)
plot(gpd)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.