Documentation

This is machine translation

Translated by
Mouseover text to see original. Click the button below to return to the English version of the page.

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

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