Clear Filters
Clear Filters

Grpdelay function with plotting for a transfer function

3 views (last 30 days)
I am trying to find the grpdelay of a transfer function and plot it but am not sure how to use the function in MATLAB.
The transfer function I have is
H = tf([0.25 -0.1045 1],[1 -0.1045 0.25],0.1;
and this is what im trying to do.

Answers (1)

Harsh Parikh
Harsh Parikh on 7 Oct 2020
Hi,
'tf()' function has the following prototype: (https://www.mathworks.com/help/control/ref/tf.html)
sys_obj = tf(<Numerator_coefficients>,<Denominator_Coefficients>,Sample_time)
Thus, your first vector ([0.25 -0.1045 1]) is a vector of coefficients for the Numerator part and the second vector ([1 -0.1045 0.25]) will be a vector of coefficients for the denominator part.
'grpdelay()' function has the following prototype: (https://www.mathworks.com/help/signal/ref/grpdelay.html)
[Group_delay, angular_freq] = grpdelay(<Numerator_coefficients>, <Denominator_Coefficients>)
After having all this information, you can use the 'grpdelay()' as follows:
[gd,w] = grpdelay(First_vector, second_vector)
I got the following graph for the given input:

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!