RootLocusPlot - Maple Help

DynamicSystems

 RootLocusPlot
 generate a root-locus plot

 Calling Sequence RootLocusPlot(sys, Krange, opts)

Parameters

 sys - System; system object Krange - (optional) realcons .. realcons; range over which $K$ is swept opts - (optional) equation(s) of the form option = value; specify options for the RootLocusPlot command

Options

 • algorithm = dsolve or fsolve

Select the algorithm used to generate the root-loci. The choices are dsolve and fsolve, the default is dsolve.

The dsolve algorithm generates a differential equation in the independent variable $K$ whose solutions trace the root-loci. The branches of the root-loci are generated by passing the differential equation to dsolve/numeric with initial conditions near each of the branch points. If supplied, the named options method, optimize, stiff, abserr, relerr, initstep, maxstep, and maxfun are passed to dsolve. The plot is generated with plots[odeplot], if supplied, the named option refine is passed to it.

The fsolve algorithm uses fsolve to generate the roots of the characteristic polynomial as it increments $K$ over $\mathrm{Krange}$. It reorders the list of roots so that roots in the same slot correspond to a single branch of the root-locus.  An adaptive technique reduces the amount that $K$ is incremented as the loci approach a branch point.

 • info = name

A name assigned a record containing information about the root-locus. See the Description section for details.

 • kfrac = positive

Specify the fractional distance from a branch value or critical value of $K$.  Where the $\mathrm{Krange}$ goes through a branch or critical value of $K$, the range is split, with a hole inserted around the value.  The value of frac is the fractional distance from the critical value to the end value or next branch/critical value. The default value is $1.×{10}^{-6}$. A branch value is a value of $K$ at which the root locus branches. A critical value is a value of $K$ at which the characteristic polynomial is degenerate, that is, acquires a degree lower than usual.

 • plotasymptotes = truefalse

When $\mathrm{true}$, and the root-locus has an asymptote, plot the asymptotes as dashed gray lines; the default is $\mathrm{true}$.

 • subsystem = [ posint, posint ]

Select a subsystem of sys; the default is $\left[1,1\right]$.

Description

 • The RootLocusPlot command plots the root-locus of a subsystem of sys, a System object. The subsystem must be numeric.
 • The root-locus consists of the roots of $1+KG\left(s\right)$, where $G\left(s\right)$ is the transfer function of the selected subsystem of sys, $s$ is the frequency variable ($z$ for discrete systems), and $K$ is a parameter.
 • The optional parameter Krange assigns the range over which $K$ is swept. It is a range of type realcons; the left hand side must be less than the right hand side. The default is $0..10$.
 • The zeros and poles of $G$ are plotted as the circles and crosses, respectively. At $K=0$ the poles of $G$ lie on the root-locus. At $K=\mathrm{\infty }$ the zeros of $G$ lie on the root-locus.
 • The option info can be used to get information about the root-locus.

Info Record Details

If the value of the keyword parameter info is a name, then that name is assigned a record containing information about the root-locus. The following paragraphs describe each of the fields of the record.

 • charpoly = polynom

The characteristic polynomial of the system, with parameter $K$. This is the polynomial whose roots make up the root-locus as $K$ varies.

 • deq = equation

The differential equation passed to dsolve. If algorithm = fsolve, the value is $\mathrm{NULL}$.

 • G = ratpoly

The transfer-function of the selected subsystem of sys.

 • Kbranches = list( realcons )

A list of the values of $K$ at which the root-locus branches.

 • Kcrit = realcons

The critical value of $K$, that is, the value at which charpoly acquires a degree less than its maximum (there can be at most one such value). If no critical value exists, the value is $\mathrm{NULL}$.

 • poles = list( complexcons )

A list of the roots of the denominator of G.

 • zeros = list( complexcons )

A list of the roots of the numerator of G.

 • The RootLocusPlot command takes all standard plot,options.

Examples

 > $\mathrm{with}\left(\mathrm{DynamicSystems}\right):$
 > $\mathrm{sys}≔\mathrm{NewSystem}\left(\frac{{\left(s+1\right)}^{2}}{{s}^{3}+s+1}\right):$
 > $\mathrm{RootLocusPlot}\left(\mathrm{sys}\right)$

Using fsolve is considerably faster than dsolve on the following system (this is not always the case).  These are the commands to create the plot from the Plotting Guide.

 > $\mathrm{sys}≔\mathrm{NewSystem}\left(\frac{9.505{s}^{2}+16.81s+8.225}{{s}^{4}+5.862{s}^{3}+4.823{s}^{2}}\right):$
 > $\mathrm{RootLocusPlot}\left(\mathrm{sys},\mathrm{algorithm}=\mathrm{fsolve},\mathrm{view}=\left[-3..0,-5..5\right]\right)$

Inspect the values of $K$ at which the locus branches.

 > $\mathrm{RootLocusPlot}\left(\mathrm{sys},\mathrm{algorithm}=\mathrm{fsolve},\mathrm{info}='\mathrm{data}'\right):$
 > $\mathrm{data}:-\mathrm{Kbranches}$
 $\left[{-0.5836509958}{,}{0.}{,}{0.9213053493}\right]$ (1)
 > $\mathrm{sys}≔\mathrm{NewSystem}\left(⟨⟨\frac{1}{{s}^{2}},\frac{{\left(s+1.×{10}^{-8}\right)}^{2}}{{\left(s-1.×{10}^{-8}\right)}^{2}}⟩⟩\right):$
 > $\mathrm{RootLocusPlot}\left(\mathrm{sys},0..1000,\mathrm{subsystem}=\left[2,1\right]\right)$