Determinant of a Hermitian Matrix

DESCRIPTION:
Computes the determinant (or its logarithm) of a real symmetric or complex Hermitian Matrix.

USAGE:
det.Hermitian(x, logarithm=T, lower=T, tune, workspace)

REQUIRED ARGUMENTS:
x:
a real symmetric or complex Matrix inheriting from the classes "Hermitian" and "Matrix".

OPTIONAL ARGUMENTS:
logarithm:
a logical variable indicating whether or not the logarithm of the modulus of the determinant should be returned rather than the determinant itself. The default is to return the logarithm.
lower:
a logical variable telling whether to use the lower or upper triangle of the matrix for the factorization used to compute the determinant. The default is to use the lower triangle.
tune:
a integer vector or list of named tuning parameters that may affect computational efficiency. The relevant parameters are the blocksize parameters NB and NBMIN as described in .laenv.
workspace:
workspace provided to the underlying software. The default is to use the optimum value relative to the tuning parameters. The optimal workspace for the problem (for the tuning parameters) is included as part of the output attributes.

VALUE:
returns an object of class "det".

DETAILS:
The determinant is computed from a triangular factorization obtained via the functions dsytrf or zhetrf from LAPACK (Anderson et al. 1994).

REFERENCES:
Anderson, E., et al. (1994). LAPACK User's Guide, 2nd edition, SIAM, Philadelphia. Golub, G., and Van Loan, C. F. (1989). Matrix Computations, 2nd edition, Johns Hopkins, Baltimore.

SEE ALSO:
det.object , det.Matrix , det.lu.Hermitian , det.eigen.Hermitian .

EXAMPLES:
x <- Matrix( sample(-3:3, size = 9, replace = T), nrow = 3, ncol = 3)
x[row(x) > col(x)] <- t(x)[row(x) > col(x)]  # construct symmetric matrix
class(x) <- Matrix.class(x)
det(x)