Before you can perform this task, you must have:
Input/output or frequency-response data. See Representing Time- and Frequency-Domain Data Using iddata Objects. For supported data formats, see Data Supported by Correlation Analysis.
Performed any required data preprocessing operations. If you use time-domain data, you can detrend it before estimation. See Ways to Prepare Data for System Identification.
Use impulseest
to compute
impulse response models. impulseest
estimates
a high-order, noncausal FIR model using correlation analysis. The
resulting models are stored as idtf
model
objects and contain impulse-response coefficients in the model numerator.
To estimate the model m
and plot the impulse
or step response, use the following syntax:
m=impulseest(data,N); impulse(m,Time); step(m,Time);
where data
is a single- or multiple-output iddata
or idfrd
object. N
is
a scalar value specifying the order of the FIR system corresponding
to the time range 0:Ts:(N-1)*Ts,
where Ts is the data sample time.
You can also specify estimation options, such as regularizing
kernel, pre-whitening filter order and data offsets, using impulseestOptions
and pass them as an
input to impulseest
. For example:
opt = impulseestOptions('RegularizationKernel','TC')); m = impulseest(data,N,opt);
To view the confidence region for the estimated response, use impulseplot
and stepplot
to
create the plot. Then use showConfidence
.
For example:
h = stepplot(m,Time);
showConfidence(h,3) % 3 std confidence region
cra
is an alternative
method for computing impulse response from time-domain data only.
Perform model analysis. See Validating Models After Estimation.