If is positive definite, then , and the determinant is the product of the squares of the diagonal elements of . Otherwise, the functions in this chapter use the Dolittle form of the decomposition, where has unit elements on its diagonal. The determinant is then the product of the diagonal elements of , taking account of possible sign changes due to row interchanges.
To avoid overflow or underflow in the computation of the determinant, some scaling is associated with each multiplication in the product of the relevant diagonal elements. The final value is represented by
where is an integer and
For complex valued determinants the real and imaginary parts are scaled separately.
3Recommendations on Choice and Use of Available Functions
It is extremely wasteful of computer time and storage to use an inappropriate function, for example to use a function requiring a complex matrix when is real. Most programmers will know whether their matrix is real or complex, but may be less certain whether or not a real symmetric matrix is positive definite, i.e., all eigenvalues of . A real symmetric matrix not known to be positive definite must be treated as a general real matrix.