I finally figured out where the problem was.
The original filter bundle (let's call it A) contains the correct
settings, but if this bundle is copied (for example, B=A), B fails to
copy everything because the "exact" member is not copyable and the
default value, 0, remains in B!
Greetings
Paolo
Il 22/10/2025 18:44, Cottrell, Allin ha scritto:
On Wed, Oct 22, 2025 at 10:58 AM Paolo Chirico
<paolo.chirico(a)uniupo.it> wrote:
>
> Hi all,
> sorry to bring this up again, but there are a few things I don't
understand:
> 1) If I set diffuse=2 and dejong=0, I expect the default method to
be sequential=1. Instead, into the filter bundle, I find:
[something apparently different]
Thanks for the report, Paolo.
There's definitely something confusing here, which needs to be fixed.
However, in general things are done right. Here's the source of
confusion: the initial user input allows setting diffuse (to 0, 1 or
2) and either sequential (to 0 or 1) or dejong (to 0 or 1). but
internally such settings get translated to three booleans: diffuse,
exact and sequential. I'm attaching a little script which illustrates
how this goes.
I think the mismatch between user settings and the internals stemmed
from a desire to maintain backward compatibility, from before we had
implementations of the sequential and de Jong methods for handling
diffuse initialization exactly. But clearly we should come up with a
less confusing interface. I'll report back once that's in place.
(BTW, running the attached script shows little difference between the
diffuse variants, other than the first estimate of the predicted error
variance, pevar. That's not unexpected, although there could well be
more differences in a more complex state-space model, where it takes
more observations to resolve the initial "diffuseness".)
Allin Cottrell
--
Paolo Chirico
RU e Prof.Agg. di Statistica Economica
Università del Piemonte Orientale
Dip. di Giurisprudenza e Scienze Politiche,
Economiche e Sociali (DIGSPES)
Alessandria, Italia