Skip to Main Content Skip to Search
Product Documentation

thiran - Generate fractional delay filter based on Thiran approximation

Syntax

sys = thiran(tau, Ts)

Description

sys = thiran(tau, Ts) discretizes the continuous-time delay tau using a Thiran filter to approximate the fractional part of the delay. Ts specifies the sampling time.

Tips

Input Arguments

tau

Time delay to discretize.

Ts

Sampling time.

Output Arguments

sys

Discrete-time tf object.

Examples

Approximate and discretize a time delay that is a noninteger multiple of the target sample time.

sys1 = thiran(2.4, 1)
 
Transfer function:
0.004159 z^3 - 0.04813 z^2 + 0.5294 z + 1
-----------------------------------------
 z^3 + 0.5294 z^2 - 0.04813 z + 0.004159
 
Sampling time: 1

The time delay is 2.4 s, and the sample time is 1 s. Therefore, sys1 is a discrete-time transfer function of order 3.

 

Discretize a time delay that is an integer multiple of the target sample time.

sys2 = thiran(10, 1)
 
Transfer function:
 1
----
z^10
 
Sampling time: 1

Algorithms

The Thiran fractional delay filter has the following form:

The coefficients a0, ..., aN are given by:

where D = τ/Ts and N = ceil(D) is the filter order. See [1].

References

[1] T. Laakso, V. Valimaki, "Splitting the Unit Delay", IEEE Signal Processing Magazine, Vol. 13, No. 1, p.30-60, 1996.

See Also

c2d | pade | tf

  


Free Control Systems Interactive Kit

Learn more about resources for designing, testing, and implementing control systems.

Get free kit

Trials Available

Try the latest control systems products.

Get trial software
 © 1984-2012- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS