Page 1 of 1

??? Error using ==> chol Matrix must be positive definite.

PostPosted: Thu May 13, 2010 6:49 pm
by Exalted
Hi

I am using the dynare 4.1.1. with MATLAB R2008b version 7.7. on Windows 7. When I run there is such a problem:

??? Error using ==> chol
Matrix must be positive definite.

Error in ==> metropolis_hastings_initialization at 52
d = chol(vv);

Error in ==> random_walk_metropolis_hastings at 43
[ ix2, ilogpo2, ModelName, MhDirectoryName, fblck, fline, npar, nblck, nruns, NewFile, MAX_nruns, d ] = ...

Error in ==> dynare_estimation_1 at 1057
feval(options_.posterior_sampling_method,'DsgeLikelihood',options_.proposal_distribution,xparam1,invhess,bounds,gend,data,...

Error in ==> dynare_estimation at 62
dynare_estimation_1(var_list,varargin{:});

Error in ==> azerbaijan at 788
dynare_estimation(var_list_);

Error in ==> dynare at 132
evalin('base',fname) ;


Could you please help me and say where is the problem and how can I fix it? My codes are attached.

Thank you.

Best,
Ali

Re: ??? Error using ==> chol Matrix must be positive definite.

PostPosted: Thu May 13, 2010 7:52 pm
by StephaneAdjemian
Hi, this error message tells that minus the hessian matrix at the estimated posterior mode is not positive definite as it should be. This means that the optimization routine (csminwel by default) didn't stop on the posterior mode. You need to get a better estimate of the posterior mode (starting with different initial conditions, changing the optimization routine...). Best, Stéphane.

Re: ??? Error using ==> chol Matrix must be positive definite.

PostPosted: Thu May 13, 2010 9:18 pm
by Exalted
Dear Stéphane

Thank you for your response. But how can I change the optimization routine? Could please help me?

And by changing the initial values there emerge other problems.

Re: ??? Error using ==> chol Matrix must be positive definite.

PostPosted: Fri May 14, 2010 7:35 am
by jpfeifer
Hi,
you could try using
Code: Select all
mode_compute=6

in the estimation command (see http://www.dynare.org/DynareWiki/MonteCarloOptimization or the respective forum threads).

Re: ??? Error using ==> chol Matrix must be positive definit

PostPosted: Thu Oct 25, 2012 1:27 am
by sunrain
jpfeifer wrote:Hi,
you could try using
Code: Select all
mode_compute=6

in the estimation command (see http://www.dynare.org/DynareWiki/MonteCarloOptimization or the respective forum threads).


Dear Jpfeifer,

Thanks very much!

I fixed it!

Thanks again!

Best

Lixin