Please note that the recommended version of Scilab is 2024.1.0. This page might be outdated.

See the recommended documentation of this function

# bode

Bode plot

### Syntax

bode(sl, [fmin, fmax] [,step] [,comments] ) bode(sl, [fmin, fmax] [,step] [,comments] [,"rad"] ) bode(sl, frq [,comments] ) bode(sl, frq [,comments] [,"rad"] ) bode(frq, db, phi [,comments] ) bode(frq, repf [,comments] [,"rad"] )

### Arguments

- sl
`syslin`

list (SISO or SIMO linear system) in continuous or discrete time.- fmin,fmax
real (frequency bounds (in Hz))

- step
real (logarithmic step.)

- comments
vector of character strings (captions).

- frq
row vector or matrix (frequencies (in Hz) ) (one row for each SISO subsystem).

- db
row vector or matrix ( magnitudes (in Db)). (one row for each SISO subsystem).

- phi
row vector or matrix ( phases (in degree)) (one row for each SISO subsystem).

- repf
row vector or matrix of complex numbers (complex frequency response).

- "rad"
converts the frequency from Hz into rad/s (multiplies by 2π),

### Description

Bode plot, i.e magnitude and phase of the frequency response of
`sl`

.

`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`

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`

.

The datatips tool may be used to display data along the phase and modulus curves.

### Examples

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)); clf(); bode(h, 0.01, 100);

### See also

- bode_asymp — asymptote de diagramme de Bode
- black — Black-Nichols diagram of a linear dynamical system
- nyquist — nyquist plot
- gainplot — magnitude plot
- repfreq — frequency response
- g_margin — gain margin and associated crossover frequency
- p_margin — phase margin and associated crossover frequency
- calfrq — frequency response discretization
- phasemag — phase and magnitude computation
- datatips — Tool for placing and editing tips along the plotted curves.

Report an issue | ||

<< black | Domaine de fréquence | bode_asymp >> |