0001 function set_parameters(xparam1) 0002 global estim_params_ M_ 0003 0004 nvx = estim_params_.nvx; 0005 ncx = estim_params_.ncx; 0006 np = estim_params_.np; 0007 Sigma_e = M_.Sigma_e; 0008 0009 if nvx 0010 offset = nvx; 0011 var_exo = estim_params_.var_exo; 0012 for i=1:nvx 0013 k = var_exo(i,1); 0014 Sigma_e(k,k) = xparam1(i)^2; 0015 end 0016 end 0017 0018 if ncx 0019 offset = nvx + nvn; 0020 corrx = estim_params_.corrx; 0021 for i=1:ncx 0022 k1 = corrx(i,1); 0023 k2 = corrx(i,2); 0024 Sigma_e(k1,k2) = xparam1(i+offset)*sqrt(Sigma_e_(k1,k1)*Sigma_e_(k2,k2)); 0025 Sigma_e(k2,k1) = Sigma_e_(k1,k2); 0026 end 0027 end 0028 0029 if np 0030 offset = offset+estim_params_.ncx+estim_params_.ncn; 0031 M_.params(estim_params_.param_vals(:,1)) = xparam1(offset+1:end); 0032 end 0033 0034 M_.Sigma_e = Sigma_e;