How do you implement an ADL model in Matlab using ARMAX?

5 次查看(过去 30 天)
I am trying to implement an ADL(autoregressive distributed lag) model and I believe the ARMAX funciton is appropriate for this but the help documention is very unclear. Has anyone used the ARMAX function to impement an ADL model? I'm tyring to estimate a time series of the following form:
Y(t) = Betahat1Y(t-1) + Betahat2X(t-1) + Betahat3Z(t-1) + Et
Where Y(t-1) is the first lag of Y, X(t-1) and Z(t-1) are the first lags of exogenous explanatory variables and Et is the error term. Thanks.

回答(1 个)

Rajiv Singh
Rajiv Singh 2013-5-2
You have 2 inputs with minimum lag of 1 sample each. Also you have only one term of each variable. So set up ARMAX orders as:
na = 1;
nb = [1 1];
nk = [1 1];
data = iddata(y,[u1 u2],Ts); % Ts is sample time; can use Ts=1 if it is irrelevant
model = armax(data,[na nb nk]);

类别

Help CenterFile Exchange 中查找有关 Conditional Mean Models 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by