module Numeric.LAPACK.Matrix.Square (
module Numeric.LAPACK.Matrix.Square.Basic,
module Numeric.LAPACK.Matrix.Square.Linear,
eigenvalues,
Eigen.schur,
eigensystem,
ComplexOf,
) where
import qualified Numeric.LAPACK.Matrix.Square.Eigen as Eigen
import Numeric.LAPACK.Matrix.Square.Basic
import Numeric.LAPACK.Matrix.Square.Linear
import Numeric.LAPACK.Vector (Vector)
import Numeric.LAPACK.Scalar (ComplexOf)
import qualified Numeric.Netlib.Class as Class
import qualified Data.Array.Comfort.Shape as Shape
eigenvalues ::
(Shape.C sh, Class.Floating a) =>
Square sh a -> Vector sh (ComplexOf a)
eigenvalues = Eigen.values
eigensystem ::
(Shape.C sh, Class.Floating a) =>
Square sh a ->
(Square sh (ComplexOf a),
Vector sh (ComplexOf a),
Square sh (ComplexOf a))
eigensystem = Eigen.decompose