Stata/Mata: ADO file error -


i posting on statalist figured cover bases since programming question.

i'm trying use ado file didn't write, getting error. believe error linked mata syntax, i'm less familiar language difficult me debug. i'm using stata 13 on pc.

the original ado file here , file here. i've pasted ado file inline below, test code , error message.

first file:

*beveridge & nelson multivariate program *this program using var-exact method *this prorgam allows i(0) variables in var - added january 31th  *last update january 31th 2008 *by freddy rojas *stata 10  quie { mata: mata clear real matrix m(real scalar num, real scalar lagsn) { n_eb=rowshape(st_matrix("e(b)"),num)' f=j(1,rows(n_eb),0) g=i(rows(n_eb)-1),j(rows(n_eb)-1,1,0) f=f\g  (i = 1; <=cols(st_matrix("dym")); i++) { f[lagsn*(i-1)+1,1...]=n_eb[1..rows(n_eb),i]' }  h=j(lagsn*(cols(st_matrix("k"))),(cols(st_matrix("k"))),0)  (j = 1; j <=cols(st_matrix("dym")); j++) { h[lagsn*(j-1)+1,j]=1 }  b_t=editmissing(st_matrix("x_"),0);  c_tt=(-f*pinv(i(rows(n_eb))-f)*b_t')' c_tt_h=h'*c_tt' misv=j(1,num,.)   c_tt_h=misv\c_tt_h' return(c_tt_h) } mata mosave m(), replace end  mata: mata clear real matrix av(real matrix nm) { f=mean(nm,1) return(f) }  mata mosave av(), replace end mata  mata: real matrix kn(real matrix nm, scalar nd) { v1=j(nd,1,1) g=nm # v1 return(g) } mata mosave kn(), replace end  } ***************** program ********************  program drop bnmult program define bnmult, rclass version 10  syntax varlist(min=2) [, lags(real 1)] [ vario(varlist) ] set more off display in ye " program performs beveridge & nelson multivariate filter " display in ye " " display in ye " programmed freddy rojas c." display in ye " universidad de chile " display in ye " freddyr@iadb.org " display in gr " last update january 31th 2008" display " "  quie {  if "`lags'" == " " {     local lags = 1 }  local ncom: list sizeof varlist local ncomio: list sizeof vario  tempvar t gen `t'=_n tsset `t' local l_varlist " "  foreach var of varlist `varlist' {     gen l_`var'=l.`var'     local l_varlist = " `l_varlist' l_`var' " }  mkmat `varlist', matrix(k)  mkmat `l_varlist', matrix(l_k)  matrix yy = k matrix dy=yy-l_k matrix dy_=dy[2...,1..`ncom']  mata: st_matrix("m_dy",av(st_matrix("dy"))) mata: st_matrix("m",kn(st_matrix("m_dy"),st_nobs()-1))  matrix dym=dy_-m  if `ncomio' != 0 { mkmat `vario', matrix(kio) matrix k=k,kio matrix kio=kio[2...,1..`ncomio'] mata: st_matrix("m_kio",av(st_matrix("kio"))) mata: st_matrix("mio",kn(st_matrix("m_kio"),st_nobs()-1)) matrix kio_=kio-mio matrix dym=dym,kio_ }  svmat dym, names(rz___)  quie var rz___*, lags(1/`lags') noc  local = 0 local j = 1  while `j' <= (`ncom'+`ncomio') {     while `i' <= `lags'-1 {     gen r__`i'_`j'=l`i'.rz___`j'     local i=`i'+1     } local j=`j'+1 local i=0 }  local nn=_n-1 mkmat r__*, matrix(x_) matrix x_=x_[1..`nn',1...] drop r__* rz__* `l_varlist'  mata: st_matrix("cycle",m(`ncom'+`ncomio',`lags')) matrix fred=cycle matrix drop yy dym dy_ dy m_dy m return clear return matrix cycle = cycle  local time =c(current_time) local qw = tc(`time') local u=1  foreach var of local varlist { matrix fred`var'=fred[1...,`u'] svmat fred`var', names(cycle_`var'_`qw') local u=`u'+1 }  if `ncomio' != 0 { local u=1 foreach var of local vario { matrix fred`var'=fred[1...,`u'+`ncom'] svmat fred`var', names(cycle_`var'_`qw') local u=`u'+1 } } } end 

...and 2 lines of code (using excellent freduse package) , subsequent error message:

freduse gdpc96    bnmult gdpc96  m() not found (0 lines skipped) (7 lines skipped) (7 lines skipped) (error occurred while loading bnmult.ado) r(111); 


Comments

Popular posts from this blog

How has firefox/gecko HTML+CSS rendering changed in version 38? -

javascript - Complex json ng-repeat -

jquery - Cloning of rows and columns from the old table into the new with colSpan and rowSpan -