0001 function set_all_parameters(xparam1) 0002 global estim_params_ M_ 0003 0004 nvx = estim_params_.nvx; 0005 ncx = estim_params_.ncx; 0006 nvn = estim_params_.nvn; 0007 ncn = estim_params_.ncn; 0008 np = estim_params_.np; 0009 Sigma_e = M_.Sigma_e; 0010 H = M_.H; 0011 0012 if nvx 0013 var_exo = estim_params_.var_exo; 0014 for i=1:nvx 0015 k =var_exo(i,1); 0016 Sigma_e(k,k) = xparam1(i)^2; 0017 end 0018 end 0019 0020 if ncx 0021 offset = nvx+nvn; 0022 corrx = estim_params_.corrx; 0023 for i=1:ncx 0024 k1 = corrx(i,1); 0025 k2 = corrx(i,2); 0026 Sigma_e(k1,k2) = xparam1(i+offset)*sqrt(Sigma_e_(k1,k1)*Sigma_e_(k2,k2)); 0027 Sigma_e(k2,k1) = Sigma_e_(k1,k2); 0028 end 0029 end 0030 0031 if nvn 0032 offset = nvx; 0033 var_endo = estim_params_.var_endo; 0034 for i=1:nvn 0035 k = var_endo(i,1); 0036 H(k,k) = xparam1(i+offset)^2; 0037 end 0038 end 0039 0040 if ncn 0041 offset = nvx+nvn+ncx; 0042 corrn = estim_params_.corrn; 0043 for i=1:ncn 0044 k1 = corr(i,1); 0045 k2 = corr(i,2); 0046 H(k1,k2) = xparam1(i+offset)*sqrt(H(k1,k1)*H(k2,k2)); 0047 H(k2,k1) = H(k1,k2); 0048 end 0049 end 0050 0051 if np 0052 offset = nvx+ncx+nvn+ncn; 0053 M_.params(estim_params_.param_vals(:,1)) = xparam1(offset+1:end); 0054 end 0055 0056 if nvx 0057 M_.Sigma_e = Sigma_e; 0058 end 0059 if nvn 0060 M_.H = H; 0061 end