In OSR, the variance-covariance matrix is computed by the following code (last line of get_variance_of_endogenous_variables.m)
- Code: Select all
vx1(i_stat,i_stat) = ghx(:,i_stat_0)*vx(i_stat_0,i_stat_0)*ghx(:,i_stat_0)'+ghu*Sigma_e*ghu';
- Code: Select all
v(stationary_vars,stationary_vars) = aa*vx*aa'+ bb*M_.Sigma_e*bb';
The difference between the two expressions is in the first term. While in stoch_simul the entire vx matrix is employed, in OSR only a sub matrix of vx identified by i_stat_0 indices is used. Numerically, the difference in terms of the value of the loss function (specified in OSR) is noticeable (20% for my model). Is there really a need for the two computations of the same matrix to be different?