# freqresp

Frequency response of rational function object

## Syntax

`[resp,outfreq] = freqresp(h,infreq)`

## Description

`[resp,outfreq] = freqresp(h,infreq)` computes the frequency response, `resp`, of the rational function object, `h`, at the frequencies specified by `freq`.

The input `h` is the handle of a rational function object returned by `rationalfit`, and `infreq` is a vector of positive frequencies, in Hz, over which the frequency response is calculated.

The output argument `outfreq` is a vector that contains the same frequencies as the input frequency vector, in order of increasing frequency. The frequency response, `resp`, is a vector of frequency response values corresponding to these frequencies. It is computed using the analytical form of the rational function

$resp=\left(\sum _{k=1}^{n}\frac{{C}_{k}}{s-{A}_{k}}+D\right){e}^{-s*Delay}\begin{array}{cc},& s=j2\pi *freq\end{array}$

where `A`, `C`, `D`, and `Delay` are properties of the rational function object, `h`.

## Examples

The following example shows you how to compute the frequency response of the data stored in the file `default.s2p` by reading it into an `rfdata` object, fitting a rational function object to the data, and using the `freqresp` method to compute the frequency response of the object.

```orig_data=read(rfdata.data,'default.s2p') freq=orig_data.Freq; data=orig_data.S_Parameters(2,1,:); fit_data=rationalfit(freq,data) [resp,freq]=freqresp(fit_data,freq); plot(freq/1e9,db(resp)); figure plot(freq/1e9,unwrap(angle(resp))); ```