Visualize disk-based stability margins

`diskmarginplot(`

plots the disk-based gain
and phase margins for the SISO or MIMO negative feedback loop
`L`

)`feedback(L,eye(N))`

, where `N`

is the number of
inputs and outputs in the open-loop response `L`

.

For MIMO responses, `diskmarginplot`

plots the multiloop disk
margins. The disk-based gain margin at each frequency is ±*GM*, where
*GM* is the value shown in the plot in dB. Similarly, the disk-based
phase margin is ±*PM* degrees, where *PM* is the value
shown on the plot. For details about disk-based gain and phase margins, see `diskmargin`

.

`diskmarginplot(___,`

plots the
disk-based gain and phase margins computed using the eccentricity `E`

)`E`

to bias the gain variation toward gain increase (`E`

> 0) or gain
decrease (`E`

< 0). If you have used `diskmargin`

to obtain disk-based margins with some particular `E`

, you can use this
syntax to see the frequency dependence of the margins at that `E`

value. For `E`

≠ 0, the plotted value is ```
GM =
min(gmax,1/max(0,gmin))
```

. In other words, the plot shows the largest amount of
gain change `[1/GM,GM]`

that fits within the disk-based gain margin
`[gmin,gmax]`

of the system at the specified *E*.

`diskmarginplot(___,`

plots the
margins at the frequencies specified by `w`

)`w`

.

If

`w`

is a cell array of the form`{wmin,wmax}`

, then the plot shows the margins at frequencies ranging between`wmin`

and`wmax`

.If

`w`

is a vector of frequencies, then the plot shows the margins at each specified frequency.

`diskmarginplot(`

plots the range of
simultaneous gain and phase variations corresponding to a disk-based gain margin. The plot
also shows the maximum gain-only and phase-only variations (this disk-based gain and phase
margins). `DGM`

)`DGM`

is a vector of the form `[gmin,gmax]`

.
To plot the ranges for multiple disk-based gain margins at once, use a two-column matrix
of the form `[gmin1,gmax1;...;gminN,gmaxN]`

. For more information about
disk-based gain margins, see `diskmargin`

.

`diskmarginplot(`

plots the
complex-valued disk of modeled gain and phase variations corresponding to the disk-based
gain margin `DGM`

,'disk')`DGM`

. For details about how disk-margin analysis models
gain and phase variations, see Stability Analysis Using Disk Margins.

`diskmarginplot(`

plots the
exclusion region in the Nyquist plane corresponding to the disk margin
`DGM`

,'nyquist')`DGM`

. The requirement that the closed-loop system remain stable for
gain or phase variations within the disk corresponding to `DGM`

amounts
to a requirement that the open-loop response remain outside a disk-shaped exclusion region
in the Nyquist plane. For more information, see Stability Analysis Using Disk Margins.

`diskmarginplot(`

plots the range of gain and phase variations corresponding to the disk size
`alpha`

,`E`

,___)`alpha`

and eccentricity `E`

. If either
`alpha`

or `E`

is a vector, then the plot includes
the ranges for all specified values. If both `alpha`

and
`E`

are vectors, then the plot includes the ranges for the pairs
`alpha1,E1;...;alphaN,EN`

.

To plot the modeled uncertainty disk corresponding to
`alpha`

,`E`

, use this syntax with the
`'disk'`

flag. To plot the corresponding exclusion disk in the Nyquist
plane, use this syntax with the `'nyquist'`

flag.

`diskmarginplot(`

draws a
plot on the axes specified by an axes handle (`AX`

,___)`axes`

or a
`UIaxes`

object). Use this argument to specify axes when creating apps in
Develop Apps Using App Designer (MATLAB). You can use this argument with any of the
previous syntaxes to draw any of the plots that `diskmarginplot`

can
generate.

`diskmargin`

| `diskmarginoptions`

| `getDGM`

| `gm2dm`

| `umargin`

| `wcdiskmarginplot`