2

I have a characteristic equation of a time-delay system and i can't define it with StateSpaceModel or TransferFunctionModel command in Mathematica; Because these commands only work for linear systems without delay.

My purpose is to define a Time-Delay system in Mathematica 8.0.1 and plotting Bode Diagram and Nyquist Diagram for a system like this:

g = ((s + 1) (1-E^(-2 s) + E^(-3 s)))/(s^2 + 2 s + 10)
Dr. belisarius
  • 60,527
  • 15
  • 115
  • 190
Jalil
  • 221
  • 2
  • 8

1 Answers1

0

Judging from the documentation, it seems MMA expects transfer functions to be polynomial. The doc page for TransferFunctionModel says:

In TransferFunctionModel[{num,den},var] num must be a polynomial matrix and den can be specified as a polynomial matrix or just the common denominator polynomial.

All the examples I have seen have polynomials in the nominator and denominator.

Matlab's bodeplot also doesn't do pure time delays.

One sometimes hears the suggestion to use a Padé approximation of the exponential. This could be done with the mma function PadeApproximant.

enter image description here

However, this seems to be valid only for rather low frequencies (the first 180 degrees of phase change or so) as stated here.

Sjoerd C. de Vries
  • 16,122
  • 3
  • 42
  • 94
  • I know that, what is your suggestion to plot _Bode_ and _Nyquist_ diagram of my problem. – Jalil May 27 '11 at 11:26
  • I don't want to use _Pade_ approximation method.I think i should write a code and substitution `g/.{s-> j w}` and calculate _Magnitude_ and _Phase_ of Complex value of g and then plot _Magnitude_ and _Phase_ respect to `w` for _Bode Plot_ and for _Nyquist Diagram_ calculate Real and Imaginary Part of `g/.{s->j w}` and then plot Imaginary part respect to real part for a range of frequency (w). – Jalil May 27 '11 at 11:54