I'm trying to patch armax. The key moment is treating of $error Command ref. says one
should use catch prefix alongside. I tried context search for "catch"
in armax.gfn and didn't find any. Is $error behavior different in loops?
A fragment for quick reference
# begin of armax.gfn fragment loop q = 0..maxq -q # estimate model if
nelem(xlist)=0 if p=0 && q=0 # p,q=0 時, 一定要有 const, 不然會有參數數目不足之
error arima p q ; y -q @eMethod else arima p q ; y -q @eMethod
@sCons endif else arima p q ; y xlist -q @eMethod @sCons endif
err = $error if (err) printf "Got error %d (%s)\n", err,
errmsg(err) endif if isnull($aic)=0 printf "Got
error,p=%d,q=%d\n",p,q else @tabname[nrow,1] = p
@tabname[nrow,2] = q @tabname[nrow,3] = $aic @tabname[nrow,4] = $bic
@tabname[nrow,5] = $hqc # test for mininum noise model if nrow=1
min_aic = $aic min_sc = $bic min_hq = $hqc order_aic =
nrow !
order_sc = nrow order_hq = nrow else if $aic <
min_aic min_aic = $aic order_aic = nrow endif
if $bic < min_sc min_sc = $bic order_sc = nrow endif
if $hqc < min_hq min_hq = $hqc order_hq = nrow
endif endif endif nrow = nrow+1 endloop # end of armax
fragment