Hi, everyone. I have a question and I hope someone can please answer me. Thanks!
When I run my mod, I get good results, but I receive the information below:
Equation solved, inaccuracy possible.
The vector of function values is near zero, as measured by the selected value
of the function tolerance. However, the last step was ineffective.
I wonder if this means something wrong and how should I do? PS: I use model_diagnostics and it shows “No obvious problems with this mod-file were detected”.
For what I can understand, this means that the solution found satisfies the specified tolerances, nonetheless some of the numeric characteristics of the last step may indicate that this is not an actual solution (check this topic in Matlab’s forum). In summary, it means what it says, that the solution found to that static equation might be inaccurate.
Though, I don’t actually know which potential consequences this could have in the computation of the dynamic model’s solution. It will run most of the times fine (as you experienced), but I don’t know if a potential not-actually-a-solution solution of the steady state would harm the dynamic solution.
No, the problem does not come from that part of the code, but from the equation you’re trying to solve itself. I mean, maybe that equation does not have a solution that is near the initial guess you provided, and thus the solver is not able to do so, for example. To be more clear it’s not a code problem, it’s a (potential) numeric problem.
That’s correct! It’s not “a mistake” is more a potential numeric issue. And also, as I said, I’m not sure how a non-exact steady state might affect dynamic solution computation (maybe someone might elaborate more on that). Anyways, also I don’t know which tolerance level is accepted to be a good solution, but if it passed the Dynare’s default tolerance for ss (which is eps^(1/3), which is ~6E-6) I think it’s good enough.
And regarding “how to get rid of it”, I’m not an expert but I think providing a better initial guess value would work, but again, since “finding a good initial guess” could sometimes be hard, I think that what you have is good enough (probably even better than that).