Am 22.11.2020 um 16:47 schrieb Allin Cottrell:
On Sat, 21 Nov 2020, Sven Schreiber wrote:
> Am 21.11.2020 um 15:26 schrieb Allin Cottrell:
>> On Fri, 20 Nov 2020, Sven Schreiber wrote:
>
>>>
>>> It seems to come from VAR_allocate_cholesky_matrix in lib/src/var.c,
>>> where we have:
>>>
>>> n = var->neqns * effective_order(var);
>>> var->C = gretl_zero_matrix_new(n, var->neqns);
>>>
>>> So the number of rows is indeed chosen as dim x lagorder which explains
>>> my row number 4 above - but this doesn't make any sense, does it?
>>
>> That C matrix is described in var.h as "augmented Cholesky-decomposed
>> error matrix". I can't say I remember the exact reason for augmenting
it
>> with zeros, but as things stand it's required for conformability in
>> functions such as gretl_VAR_get_fcast_decomp().
I think I understand it now. That C matrix augmented with a bunch of
rows of zeros is a device one would use in giving a compact account of
the algorithm for IRFs and FEVDs. One can construct it literally in code
but that's not efficient -- better to keep C square and just calculate
"as if" it had zeros in train. That's what we now do in git.
OK, so I guess this automatically makes $system.C on the hansl side then
also square in the future?
thanks
sven