Stability experimental Maintainer Patrick Perry
 Contents Matrix and vector solving In-place solving unsafe operations
Description
Synopsis
class RMatrix a e => RSolve a e where
 unsafeDoSolve :: a (m, n) e -> DVector t m e -> IOVector n e -> IO () unsafeDoSolveMat :: a (m, n) e -> DMatrix t (m, k) e -> IOMatrix (n, k) e -> IO () unsafeDoSSolve :: e -> a (m, n) e -> DVector t m e -> IOVector n e -> IO () unsafeDoSSolveMat :: e -> a (m, n) e -> DMatrix t (m, k) e -> IOMatrix (n, k) e -> IO () unsafeDoSolve_ :: a (n, n) e -> IOVector n e -> IO () unsafeDoSSolve_ :: e -> a (n, n) e -> IOVector n e -> IO () unsafeDoSolveMat_ :: a (m, m) e -> IOMatrix (m, n) e -> IO () unsafeDoSSolveMat_ :: e -> a (m, m) e -> IOMatrix (m, n) e -> IO ()
getSolve :: RSolve a e => a (m, n) e -> DVector t m e -> IO (DVector r n e)
getSolveMat :: RSolve a e => a (m, n) e -> DMatrix t (m, k) e -> IO (DMatrix r (n, k) e)
getSSolve :: RSolve a e => e -> a (m, n) e -> DVector t m e -> IO (DVector r n e)
getSSolveMat :: RSolve a e => e -> a (m, n) e -> DMatrix t (m, k) e -> IO (DMatrix r (n, k) e)
doSolve :: RSolve a e => a (m, n) e -> DVector t m e -> IOVector n e -> IO ()
doSolveMat :: RSolve a e => a (m, n) e -> DMatrix t (m, k) e -> IOMatrix (n, k) e -> IO ()
doSSolve :: RSolve a e => e -> a (m, n) e -> DVector t m e -> IOVector n e -> IO ()
doSSolveMat :: RSolve a e => e -> a (m, n) e -> DMatrix t (m, k) e -> IOMatrix (n, k) e -> IO ()
doSolve_ :: RSolve a e => a (n, n) e -> IOVector n e -> IO ()
doSolveMat_ :: RSolve a e => a (m, m) e -> IOMatrix (m, n) e -> IO ()
doSSolve_ :: RSolve a e => e -> a (n, n) e -> IOVector n e -> IO ()
doSSolveMat_ :: RSolve a e => e -> a (m, m) e -> IOMatrix (m, n) e -> IO ()
unsafeGetSolve :: RSolve a e => a (m, n) e -> DVector t m e -> IO (DVector r n e)
unsafeGetSolveMat :: RSolve a e => a (m, n) e -> DMatrix t (m, k) e -> IO (DMatrix r (n, k) e)
unsafeGetSSolve :: RSolve a e => e -> a (m, n) e -> DVector t m e -> IO (DVector r n e)
unsafeGetSSolveMat :: RSolve a e => e -> a (m, n) e -> DMatrix t (m, k) e -> IO (DMatrix r (n, k) e)
Documentation
 class RMatrix a e => RSolve a e where Source
Methods
 unsafeDoSolve :: a (m, n) e -> DVector t m e -> IOVector n e -> IO () Source
 unsafeDoSolveMat :: a (m, n) e -> DMatrix t (m, k) e -> IOMatrix (n, k) e -> IO () Source
 unsafeDoSSolve :: e -> a (m, n) e -> DVector t m e -> IOVector n e -> IO () Source
 unsafeDoSSolveMat :: e -> a (m, n) e -> DMatrix t (m, k) e -> IOMatrix (n, k) e -> IO () Source
 unsafeDoSolve_ :: a (n, n) e -> IOVector n e -> IO () Source
 unsafeDoSSolve_ :: e -> a (n, n) e -> IOVector n e -> IO () Source
 unsafeDoSolveMat_ :: a (m, m) e -> IOMatrix (m, n) e -> IO () Source
 unsafeDoSSolveMat_ :: e -> a (m, m) e -> IOMatrix (m, n) e -> IO () Source
Instances
 BLAS1 e => RSolve Perm e BLAS2 e => RSolve (DiagMatrix Imm) e BLAS3 e => RSolve (Tri (DMatrix s)) e BLAS2 e => RSolve (Tri (BMatrix s)) e
Matrix and vector solving
 getSolve :: RSolve a e => a (m, n) e -> DVector t m e -> IO (DVector r n e) Source
Solve for a vector
 getSolveMat :: RSolve a e => a (m, n) e -> DMatrix t (m, k) e -> IO (DMatrix r (n, k) e) Source
Solve for a matrix
 getSSolve :: RSolve a e => e -> a (m, n) e -> DVector t m e -> IO (DVector r n e) Source
Solve for a vector and scale
 getSSolveMat :: RSolve a e => e -> a (m, n) e -> DMatrix t (m, k) e -> IO (DMatrix r (n, k) e) Source
Solve for a matrix and scale
In-place solving
 doSolve :: RSolve a e => a (m, n) e -> DVector t m e -> IOVector n e -> IO () Source
 doSolveMat :: RSolve a e => a (m, n) e -> DMatrix t (m, k) e -> IOMatrix (n, k) e -> IO () Source
 doSSolve :: RSolve a e => e -> a (m, n) e -> DVector t m e -> IOVector n e -> IO () Source
 doSSolveMat :: RSolve a e => e -> a (m, n) e -> DMatrix t (m, k) e -> IOMatrix (n, k) e -> IO () Source
 doSolve_ :: RSolve a e => a (n, n) e -> IOVector n e -> IO () Source
 doSolveMat_ :: RSolve a e => a (m, m) e -> IOMatrix (m, n) e -> IO () Source
 doSSolve_ :: RSolve a e => e -> a (n, n) e -> IOVector n e -> IO () Source
 doSSolveMat_ :: RSolve a e => e -> a (m, m) e -> IOMatrix (m, n) e -> IO () Source
unsafe operations
 unsafeGetSolve :: RSolve a e => a (m, n) e -> DVector t m e -> IO (DVector r n e) Source
 unsafeGetSolveMat :: RSolve a e => a (m, n) e -> DMatrix t (m, k) e -> IO (DMatrix r (n, k) e) Source
 unsafeGetSSolve :: RSolve a e => e -> a (m, n) e -> DVector t m e -> IO (DVector r n e) Source
 unsafeGetSSolveMat :: RSolve a e => e -> a (m, n) e -> DMatrix t (m, k) e -> IO (DMatrix r (n, k) e) Source