Impulse response for rational function object
impulse may be removed in a future release.
[resp,t] = impulse(h,ts,n)
[resp,t] = impulse(h,ts,n) computes
the impulse response,
resp, of the rational function
h, over the time period specified by
While you can compute the output response for a rational function
object by computing the impulse response of the object and then convolving
that response with the input signal, this approach is not recommended.
Instead, you should use the
to perform this computation because it generally gives a more accurate
output signal for a given input signal.
h is the handle of a rational function
ts is a positive scalar value that specifies
the sample time of the computed impulse response, and
a positive integer that specifies the total number of samples in the
The vector of time samples of the impulse response,
is computed from the inputs as
t = [0,ts,2*ts,...,(n-1)*ts].
The impulse response,
resp, is an
vector of impulse response values corresponding to these times. It
is computed using the analytical form of the rational function
Delay are properties of the rational function
M is the number of poles in the
rational function object.
Impulse Response of Data Stored In File
Compute the impulse response of the data stored in the file passive.s2p by
fitting a rational function object to the data and using the impulse method
to compute the impulse response of the object.
Section 1 Extract frequency and data from
orig_data = rfdata.data with properties: Freq: [202x1 double] S_Parameters: [2x2x202 double] GroupDelay: [202x1 double] NF: [202x1 double] OIP3: [202x1 double] Z0: 50.0000 + 0.0000i ZS: 50.0000 + 0.0000i ZL: 50.0000 + 0.0000i IntpType: 'Linear' Name: 'Data object'
Section 2 Rational fit the data
fit_data = rfmodel.rational with properties: A: [6x1 double] C: [6x1 double] D: 0 Delay: 0 Name: 'Rational Function'
Section 3 Calculate the Impulse Response