Documentation

# freqs

Frequency response of analog filters

## Syntax

```h = freqs(b,a,w) [h,w] = freqs(b,a,n) freqs ```

## Description

`freqs` returns the complex frequency response H(jω) (Laplace transform) of an analog filter

`$H\left(s\right)=\frac{B\left(s\right)}{A\left(s\right)}=\frac{b\left(1\right){s}^{n}+b\left(2\right){s}^{n-1}+\cdots +b\left(n+1\right)}{a\left(1\right){s}^{m}+a\left(2\right){s}^{m-1}+\cdots +a\left(m+1\right)}$`

given the numerator and denominator coefficients in vectors `b` and `a`.

`h = freqs(b,a,w)` returns the complex frequency response of the analog filter specified by coefficient vectors `b` and `a`. `freqs` evaluates the frequency response along the imaginary axis in the complex plane at the angular frequencies in rad/s specified in real vector `w`, where `w` is a vector containing more than one frequency.

`[h,w] = freqs(b,a,n)` uses `n` frequency points to compute the frequency response, `h`, where `n` is a real, scalar value. The frequency vector `w` is auto-generated and has length `n`. If you omit `n` as an input, 200 frequency points are used. If you do not need the generated frequency vector returned, you can use the form ```h = freqs(b,a,n)``` to return only the frequency response, `h`.

`freqs` with no output arguments plots the magnitude and phase response versus frequency in the current figure window.

`freqs` works only for real input systems and positive frequencies.

## Examples

collapse all

Find and graph the frequency response of the transfer function

`$H\left(s\right)=\frac{0.2{s}^{2}+0.3s+1}{{s}^{2}+0.4s+1}.$`

```a = [1 0.4 1]; b = [0.2 0.3 1]; w = logspace(-1,1); freqs(b,a,w)```

You can also compute the results and use them to generate the plots.

```h = freqs(b,a,w); mag = abs(h); phase = angle(h); phasedeg = phase*180/pi; subplot(2,1,1), loglog(w,mag), grid on xlabel 'Frequency (rad/s)', ylabel Magnitude subplot(2,1,2), semilogx(w,phasedeg), grid on xlabel 'Frequency (rad/s)', ylabel 'Phase (degrees)'```

Design a 5th-order analog lowpass Bessel filter with an approximately constant group delay up to $1{0}^{4}$ rad/s. Plot the frequency response of the filter using `freqs`.

```[b,a] = besself(5,10000); % Bessel analog filter design freqs(b,a) % Plot frequency response```

## Algorithms

`freqs` evaluates the polynomials at each frequency point, then divides the numerator response by the denominator response:

```s = i*w; h = polyval(b,s)./polyval(a,s); ```