nyquist — nyquist plot
nyquist( sl,[fmin,fmax] [,step] [,comments] ) nyquist( sl, frq [,comments] ) nyquist(frq,db,phi [,comments]) nyquist(frq, repf [,comments])
syslin
list (SIMO linear system in
continuous or discrete time )
real scalars (frequency bounds (in Hz))
real (logarithmic discretization step)
string vector (captions).
vector or matrix of frequencies (in Hz) (one row for each
output of sl
).
real matrices of modulus (in Db) and phases (in degree) (one
row for each output of sl
).
matrix of complex numbers. Frequency response (one row for
aech output of sl
)
Nyquist plot i.e Imaginary part versus Real part of the frequency
response of sl
.
For continuous time systems sl(2*%i*%pi*w)
is
plotted. For discrete time system or discretized systems
sl(exp(2*%i*%pi*w*fd)
is used ( fd=1
for discrete time systems and fd=sl('dt')
for
discretized systems )
sl
can be a continuous-time or discrete-time SIMO
system (see syslin
). In case of multi-output the
outputs are plotted with different symbols.
The frequencies are given by the bounds fmin,fmax
(in Hz) or by a row-vector (or a matrix for multi-output)
frq
.
step
is the ( logarithmic ) discretization step.
(see calfrq
for the choice of default value).
comments
is a vector of character strings
(captions).
db,phi
are the matrices of modulus (in Db) and
phases (in degrees). (One row for each response).
repf
is a matrix of complex numbers. One row for
each response.
Default values for fmin
and
fmax
are 1.d-3
,
1.d+3
if sl
is continuous-time or
1.d-3
, 0.5
/sl.dt (nyquist frequency)
if sl
is discrete-time.
Automatic discretization of frequencies is made by
calfrq
.
clf(); s=poly(0,'s'); h=syslin('c',(s^2+2*0.9*10*s+100)/(s^2+2*0.3*10.1*s+102.01)); comm='(s^2+2*0.9*10*s+100)/(s^2+2*0.3*10.1*s+102.01)'; nyquist(h,0.01,100,comm); h1=h*syslin('c',(s^2+2*0.1*15.1*s+228.01)/(s^2+2*0.9*15*s+225)) clf(); nyquist([h1;h],0.01,100,['h1';'h']) clf();nyquist([h1;h])