#include "MSBVARcpp.h" extern "C" SEXP mc_irf_bsvar(SEXP A0postR, SEXP nstepsR, SEXP N2R, SEXP mR, SEXP pR, SEXP ncoefR, SEXP n0R, SEXP n0cumR, SEXP XXinvR, SEXP Ui, SEXP PpostR, SEXP signlistR) { int i, j, nsteps, N2, m, p, ncoef, pctct=0, *n0, *n0cum; nsteps=INTEGER(nstepsR)[0]; N2=INTEGER(N2R)[0]; m=INTEGER(mR)[0]; p=INTEGER(pR)[0]; ncoef=INTEGER(ncoefR)[0]; n0=INTEGER(n0R); n0cum=INTEGER(n0cumR); // Rprintf("m = %d\np = %d\nncoef = %d\nnsteps = %d\nN2 = %d\n", m, p, ncoef, nsteps, N2); A0obj A0post(A0postR); Matrix A0(m,m), A0i(m,m); // Rprintf("A0 variables assigned\n"); Matrix XXinv=R2Cmat2(XXinvR), IRF(N2,m*m*nsteps); // Rprintf("XXinv variable assigned\n"); ColumnVector b; RowVector signvec=R2CRV(signlistR); Matrix signmat(m,m); for(i=1;i<=m;i++) signmat.Row(i)=signvec; // Rprintf("signmat(%dx%d):",signmat.Nrows(),signmat.Ncols()); printMatrix(signmat); GetRNGstate(); for(i=0;i