{-# LANGUAGE TypeFamilies #-} module Numeric.LAPACK.Matrix.Hermitian.Private where import Numeric.LAPACK.Vector (Vector) import Numeric.LAPACK.Scalar (RealOf) newtype Diagonal f sh a = Diagonal {runDiagonal :: Vector sh (RealOf a) -> f a} newtype TakeDiagonal f sh a = TakeDiagonal {runTakeDiagonal :: f a -> Vector sh (RealOf a)} newtype Determinant f a = Determinant {getDeterminant :: f a -> RealOf a}