Instead of computing
directly, we store the Cholesky decomposition
of
computed using the QR decomposition.
Consider a matrix of column vectors
.
These columns correspond to
the vectors
in Table
13.1.
A covariance estimate is obtained by forming
the matrix
where is the diagonal matrix formed from data weights ,
, and
.
It may be verified that this is the same as
computing the elements of
as follows:
But note that if you take the QR decomposition
, that
Thus, we see that the QR decomposition of
is related to the Cholesky factor of
.
There is no reason to ever compute
explicitly.
Computing
requires twice the number of bits of precision as .
A quadratic form
can be computed using as follows:
where
This convention is used in the software (
software/gmix_step.m). More
precisely, the matrix tmpidx stores
where the rows of
are
.
The QR decomposition of tmpidx is
, which is stored as a parameter.
The subroutine for computing
is
lqr_eval.m. This routine
inputs
,
, and .
The mixture (13.1) is implemented by
subroutine lqr_evp.m.