align-audio-0.0.0.1: src/lapack/Vector.hs
module Vector where
import qualified Numeric.LAPACK.Vector as BlasVector
import qualified Numeric.Netlib.Class as Class
import Data.Complex (Complex)
import qualified Data.Array.Comfort.Storable as Array
import qualified Data.Array.Comfort.Shape as Shape
import Data.Array.Comfort.Storable (Array)
findPeak :: (Class.Real a) => Array (Shape.Cyclic Int) a -> (Int, Int)
findPeak xs =
let (k,_) = BlasVector.argAbsMaximum xs
in (k - Shape.size (Array.shape xs), k)
mulConj ::
(Shape.C sh, Eq sh, Class.Real a) =>
Array sh (Complex a) -> Array sh (Complex a) -> Array sh (Complex a)
mulConj = flip BlasVector.mulConj