It's a odd problem

This forum is closed. You can read the posts but cannot write. We have migrated the forum to a new location where you will have to reset your password.
Forum rules
This forum is closed. You can read the posts but cannot write. We have migrated the forum to a new location (https://forum.dynare.org) where you will have to reset your password.

It's a odd problem

Postby peer » Sun Aug 21, 2011 10:16 am

hi all,
I don't know what lead this problem to hit. I just work my model with dynare 4.2.1. Following is dynare error log and attachment is my mod file. I appreciate anyone to give some suggestions. thanks again.

There are 6 eigenvalue(s) larger than 1 in modulus
for 6 forward-looking variable(s)

The rank conditions ISN'T verified!

warning: matrix singular to machine precision, rcond = 0
warning: called from
dr1 at line 411 column 12
resol at line 147 column 32
stoch_simul at line 66 column 21
ndsge at line 258 column 6
dynare at line 132 column 1
warning: attempting to find minimum norm solution
warning: dgelsd: rank deficient 6x6 matrix, rank = 4
warning: matrix singular to machine precision, rcond = 7.66373e-044
warning: attempting to find minimum norm solution
warning: dgelsd: rank deficient 9x9 matrix, rank = 7
warning: matrix singular to machine precision, rcond = 0
warning: attempting to find minimum norm solution
warning: dgelsd: rank deficient 23x23 matrix, rank = 18
error: subscript indices must be either positive integers or logicals.
error: called from:
error: c:\dynare\4.2.1\matlab\dr1.m at line 550, column 32
error: c:\dynare\4.2.1\matlab\resol.m at line 147, column 32
error: c:\dynare\4.2.1\matlab\stoch_simul.m at line 66, column 21
Attachments
ndsge.mod
(2.2 KiB) Downloaded 82 times
peer
 
Posts: 7
Joined: Sun Aug 21, 2011 9:36 am

Re: It's a odd problem

Postby jpfeifer » Mon Aug 22, 2011 10:05 am

My first guess is that there is a problem with the steady state. For example, M looks like it is initialized to 0, but it can never be 0. As a consequence, Dynare runs into trouble with numerical accuracy. It may well be that the numerical steady state solver found a local minimum that is not the actual true steady state.

Consider e.g. the equations:
Code: Select all
M=(1+delta_m)*M(-1);

and
Code: Select all
s*exp(d)*(P/M)=epsilon*(C^(-sigma))*(1-(1/(1-delta+R(+1))));


The first one implies that M=0 in steady state, but that results in a division by 0 in the second equation. Could it be that this process should be defined in logs?
------------
Johannes Pfeifer
University of Cologne
https://sites.google.com/site/pfeiferecon/
jpfeifer
 
Posts: 6940
Joined: Sun Feb 21, 2010 4:02 pm
Location: Cologne, Germany

Re: It's a odd problem

Postby peer » Mon Aug 22, 2011 12:11 pm

jpfeifer wrote:My first guess is that there is a problem with the steady state. For example, M looks like it is initialized to 0, but it can never be 0. As a consequence, Dynare runs into trouble with numerical accuracy. It may well be that the numerical steady state solver found a local minimum that is not the actual true steady state.

Consider e.g. the equations:
Code: Select all
M=(1+delta_m)*M(-1);

and
Code: Select all
s*exp(d)*(P/M)=epsilon*(C^(-sigma))*(1-(1/(1-delta+R(+1))));


The first one implies that M=0 in steady state, but that results in a division by 0 in the second equation. Could it be that this process should be defined in logs?

jpfeifer,thanks for you reply. But I don't understand your means. do you advice log second equation?
peer
 
Posts: 7
Joined: Sun Aug 21, 2011 9:36 am

Re: It's a odd problem

Postby jpfeifer » Mon Aug 22, 2011 12:17 pm

I don't know what M is, but the equation
Code: Select all
M=(1+delta_m)*M(-1);

implies that M has steady state 0 (and if delta_m is larger than 0 that the process is unstable). However
Code: Select all
s*exp(d)*(P/M)=epsilon*(C^(-sigma))*(1-(1/(1-delta+R(+1))));

implies that M can never be 0 as you divide by it. Hence, my guess was that the first expression is a process in logs and you have to put exp(M) in the second equation. However, without knowing your model this is impossible to tell. I only know for sure that your current model specification is wrong.
Last edited by jpfeifer on Mon Aug 22, 2011 1:25 pm, edited 1 time in total.
------------
Johannes Pfeifer
University of Cologne
https://sites.google.com/site/pfeiferecon/
jpfeifer
 
Posts: 6940
Joined: Sun Feb 21, 2010 4:02 pm
Location: Cologne, Germany

Re: It's a odd problem

Postby peer » Mon Aug 22, 2011 12:45 pm

jpfeifer wrote:I don't know what M is, but the equation
Code: Select all
M=(1+delta_m)*M(-1);

implies that M has steady state 0 (and if delta_m is larger than 0 that the process is unstable). However
Code: Select all
s*exp(d)*(P/M)=epsilon*(C^(-sigma))*(1-(1/(1-delta+R(+1))));

implies that M can never be 0 as you divide by it. Hence, me guess was that the first expression is a process in logs and you have to put exp(M) in the second equation. However, without knowing your model this is impossible to tell. I only know for sure that your current model specification is wrong.

thanks, I understand it. thanks again.
peer
 
Posts: 7
Joined: Sun Aug 21, 2011 9:36 am


Return to Dynare help

Who is online

Users browsing this forum: No registered users and 11 guests