I would use lyapunov_tol = 1e-12 (in the example disclyap_fat.m, the criterium is 1e-16) and kalman_tol = 1e-12
Both options should be accessible to users and obtained from options_. The initialization should take place in global_initialization.m
Best
Michel
Errata:
- it is options_.lyapunov_complex_threshold=1e-15 that is passed in calls
to the existing lyapunov_symm.m and I can use that as tolerance instead the original 1e-6 if needed.
Warning:
If I pass a=T=[0] and b=RQR'~0 to lyapunov_symm.m, I get result Pstar very different from b although the solution to Lyapunov x-a*x*a' = b is x=b=RQR' and both, the new C++ and old matlab disklyap_fast return X=b=RQR as solution!!
Best regards
George Mob. +44(0)7951415480 artilogica@btconnect.com
----- Original Message ----- From: "G. Perendia" george@perendia.orangehome.co.uk To: "Michel Juillard" michel.juillard@ens.fr; "Stéphane Adjemian" stephane.adjemian@gmail.com Sent: Wednesday, July 29, 2009 7:46 AM Subject: Re: measurement errors + steady KF
Hi Michel, Stephane
What tolerances should we use to pass:
1)for the new fast iterative C++ Lyapunov solution convergence check
if max( max( abs( P1 - P0 ) ) )>tol
The original Joe Pearlman's matlab code used 1e-6. which is same as Dynare default ricatti_tol (also used for a similar purpose in calls to the existing lyapunov_symm.m.). So, shall we use the riccati_tol or set a separate, lyapunov_tol one at the same default level?
- and, as per below, for the Old style DiffuseLikelihood.m like Pstar
convergence/differences, that has been built into the C++KF i.e.: notsteady = ~(max(max(abs(Pstar-oldPstar)))<crit); where crit is options_.kalman_tol = 1.0000e-012 - I guess we can
continue
to use the same though the new likelihood/kalman_filter*.m suite uses riccati_tol instead but for F convergence check.
Best regards
George Mob. +44(0)7951415480 artilogica@btconnect.com
----- Original Message ----- From: "Michel Juillard" michel.juillard@ens.fr To: "G. Perendia" george@perendia.orangehome.co.uk; "Stéphane Adjemian" stephane.adjemian@gmail.com Sent: Tuesday, July 14, 2009 11:47 PM Subject: Re: measurement errors + steady KF
I don't know. This is something that we need to discuss with Stephane.
All the best,
Michel
G. Perendia wrote:
Thanks Michel
I am finishing algorithm for checking if KF P (and/or K) are steady
for
the
C++KF.
Old DiffuseLikelihood.m uses Pstar differences, i.e.: notsteady = ~(max(max(abs(Pstar-oldPstar)))<crit); where crit is options_.kalman_tol = 1.0000e-012
whilst the new kalman_filter.m uses K to check: notsteady = max(max(abs(K-oldK))) > riccati_tol; where K = Pstar*Z'*invF; and options_.riccati_tol= 1.0000e-006
Which tolerance (and check) should I use for C++KF? I have already built a system using Pstar -oldPstar and that works
well
but
question is which tolerance to use since riccati seems sufficient for
P
difference too.
Best regards
George Mob. +44(0)7951415480 artilogica@btconnect.com
----- Original Message ----- From: "Michel Juillard" michel.juillard@ens.fr To: "G. Perendia" george@perendia.orangehome.co.uk Sent: Tuesday, July 14, 2009 6:57 AM Subject: Re: measurement errors
Hi George,
it is like for exogenous variables. If GDP is an endogenous variable
estimated_params; stderr GDP, uniform_pdf,,,0,1; .... end;
will introduce a measurement error on GDP.
Best
Michel G. Perendia wrote:
Dear Michel
For testing Part Info (and the other) Kalman filters, I would need
to
set situation with measurement errors so that H~=0.
Can you please let me know how one specifies measurement errors in Dynare for estimation so that H ~ =0? Best regards
George Mob. +44(0)7951415480 artilogica@btconnect.com mailto:artilogica@btconnect.com
a