Main Content

Determining Model Order and Delay

Estimation requires you to specify the model order and delay. Many times, these values are not known. You can determine the model order and delay in one of the following ways:

  • Guess their values by visually inspecting the data or based on the prior knowledge of the system.

  • Estimate delay as a part of idproc or idtf model estimation. These models treat delay as an estimable parameter and you can determine their values by the estimation commands procest and tfest, respectively. However automatic estimation of delays can cause errors. Therefore, it is recommended that you analyze the data for delays in advance.

  • To estimate delays, you can also use one of the following tools:

    • Estimate delay using delayest. The choice of the order of the underlying ARX model and the lower/upper bound on the value of the delay to be estimated influence the value returned by delayest.

    • Compute impulse response using impulseest. Plot the impulse response with a confidence interval of sufficient standard deviations (usually 3). The delay is indicated by the number of response samples that are inside the statistically zero region (marked by the confidence bound) before the response goes outside that region.

    • Select the model order in n4sid by specifying the model order as a vector.

    • Choose the model order of an ARX model using arxstruc or ivstruc and selstruc. These command select the number of poles, zeros and delay.

    See Model Structure Selection: Determining Model Order and Input Delay for an example of using these tools.