Main Content

Magnitude-only Bode plot of frequency response

`bodemag`

enables you to generate magnitude-only plots to
visualize the magnitude frequency response of a dynamic system.

For a more comprehensive function, see `bode`

. `bode`

provides magnitude
and phase information. If you have System Identification™ toolbox,
`bode`

also returns the computed values, including statistical
estimates.

For more customizable plotting options, see `bodeplot`

.

`bodemag(`

creates a Bode
magnitude plot of the frequency response of the dynamic
system model
`sys`

)`sys`

. The plot displays the magnitude (in dB) of the system
response as a function of frequency. `bodemag`

automatically
determines frequencies to plot based on system dynamics.

If `sys`

is a multi-input, multi-output (MIMO) model, then
`bodemag`

produces an array of Bode magnitude plots in
which each plot shows the frequency response of one I/O pair.

`bodemag(sys1,sys2,...,sysN)`

plots the frequency response
of multiple dynamic systems on the same plot. All systems must have the same
number of inputs and outputs.

`bodemag(sys1,`

specifies a color, line style, and marker for each system in the plot.`LineSpec`

1,...,sysN,LineSpecN)

`bodemag(___,`

plots
system responses for frequencies specified by `w`

)`w`

.

If

`w`

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

, then`bodemag`

plots the response at frequencies ranging between`wmin`

and`wmax`

.If

`w`

is a vector of frequencies, then`bodemag`

plots the response at each specified frequency.

You can use this syntax with any of the input-argument combinations in previous syntaxes.

`bodemag`

computes the frequency response as follows:

Compute the zero-pole-gain (

`zpk`

) representation of the dynamic system.Evaluate the gain and phase of the frequency response based on the zero, pole, and gain data for each input/output channel of the system.

For continuous-time systems,

`bodemag`

evaluates the frequency response on the imaginary axis*s*=*jω*and considers only positive frequencies.For discrete-time systems,

`bodemag`

evaluates the frequency response on the unit circle. To facilitate interpretation, the command parameterizes the upper half of the unit circle as:$$z={e}^{j\omega {T}_{s}},\text{\hspace{1em}}0\le \omega \le {\omega}_{N}=\frac{\pi}{{T}_{s}},$$

where

*T*is the sample time and_{s}*ω*is the Nyquist frequency. The equivalent continuous-time frequency_{N}*ω*is then used as the*x*-axis variable. Because $$H\left({e}^{j\omega {T}_{s}}\right)$$ is periodic with period 2*ω*,_{N}`bodemag`

plots the response only up to the Nyquist frequency*ω*. If_{N}`sys`

is a discrete-time model with unspecified sample time,`bodemag`

uses*T*= 1._{s}