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**.

Baggenstoss
2017-05-19