getGainCrossover

Crossover frequencies for specified gain

Syntax

• `wc = getGainCrossover(sys,gain)` example

Description

example

````wc = getGainCrossover(sys,gain)` returns the vector `wc` of frequencies at which the frequency response of the dynamic system model, `sys`, has principal gain of `gain`. For SISO systems, the principal gain is the frequency response. For MIMO models, the principal gain is the largest singular value of `sys`.```

Examples

collapse all

Unity Gain Crossover

Find the 0dB crossover of a single-loop control system with plant

$G\left(s\right)=\frac{1}{{\left(s+1\right)}^{3}}$

and PI controller

$C\left(s\right)=1.14+\frac{0.454}{s}.$

```G = zpk([],[-1,-1,-1],1); C = pid(1.14,0.454); sys = G*C; wc = getGainCrossover(sys,1)```
```wc = 0.5214 ```

The 0 dB crossovers are the frequencies at which the open-loop response `sys = G*C` has unity gain. Because this system only crosses unity gain once, `getGainCrossover` returns a single value.

Notch Filter Stopband

Find the 20 dB stopband of

$sys=\frac{{s}^{2}+0.05s+100}{{s}^{2}+5s+100}.$

`sys` is a notch filter centered at 10 rad/s.

```sys = tf([1 0.05 100],[1 5 100]); gain = db2mag(-20); wc = getGainCrossover(sys,gain)```
```wc = 9.7531 10.2531 ```

The `db2mag` command converts the gain value of –20 dB to absolute units. The `getGainCrossover` command returns the two frequencies that define the stopband.

Input Arguments

collapse all

`sys` — Input dynamic systemdynamic system model

Input dynamic system, specified as any SISO or MIMO dynamic system model.

`gain` — Input gainpositive real scalar

Input gain in absolute units, specified as a positive real scalar.

• If `sys` is a SISO model, the gain is the frequency response magnitude of `sys`.

• If `sys` is a MIMO model, gain means the largest singular value of `sys`.

Output Arguments

collapse all

`wc` — Crossover frequenciescolumn vector

Crossover frequencies, returned as a column vector. This vector lists the frequencies at which the gain or largest singular value of `sys` is `gain`.

collapse all

Algorithms

`getGainCrossover` computes gain crossover frequencies using structure-preserving eigensolvers from the SLICOT library. For more information about the SLICOT library, see http://slicot.org.