blas-0.6: Bindings to the BLAS librarySource codeContentsIndex
Data.Matrix.Banded
Stabilityexperimental
MaintainerPatrick Perry <patperry@stanford.edu>
Contents
Banded matrix type
Banded shape
Creating banded matrices
Reading banded matrix elements
Special banded matrices
Vector views
Converting to lists
Low-level properties
Matrix and vector multiplication
Converting between mutable and immutable banded matrices
Description
Synopsis
newtype Banded mn e = B (IOBanded mn e)
module BLAS.Tensor.Base
module BLAS.Matrix.Base
bandwidth :: BaseBanded a x => a mn e -> (Int, Int)
numLower :: BaseBanded a x => a mn e -> Int
numUpper :: BaseBanded a x => a mn e -> Int
coerceBanded :: BaseBanded a x => a mn e -> a mn' e
banded :: BLAS1 e => (Int, Int) -> (Int, Int) -> [((Int, Int), e)] -> Banded (m, n) e
listsBanded :: BLAS1 e => (Int, Int) -> (Int, Int) -> [[e]] -> Banded (m, n) e
unsafeBanded :: BLAS1 e => (Int, Int) -> (Int, Int) -> [((Int, Int), e)] -> Banded (m, n) e
module BLAS.Tensor.Immutable
zeroBanded :: BLAS1 e => (Int, Int) -> (Int, Int) -> Banded (m, n) e
constantBanded :: BLAS1 e => (Int, Int) -> (Int, Int) -> e -> Banded (m, n) e
diagBanded :: BLAS1 e => Banded mn e -> Int -> Vector k e
unsafeDiagBanded :: BLAS1 e => Banded mn e -> Int -> Vector k e
listsFromBanded :: BLAS1 e => Banded mn e -> ((Int, Int), (Int, Int), [[e]])
ldaOfBanded :: BaseBanded a x => a mn e -> Int
isHermBanded :: BaseBanded a x => a mn e -> Bool
module BLAS.Matrix.Immutable
class UnsafeFreezeBanded a where
unsafeFreezeBanded :: a mn e -> Banded mn e
class UnsafeThawBanded a where
unsafeThawBanded :: Banded mn e -> a mn e
freezeBanded :: (ReadBanded a x m, WriteBanded b y m, UnsafeFreezeBanded b, BLAS1 e) => a mn e -> m (Banded mn e)
thawBanded :: (WriteBanded a y m, BLAS1 e) => Banded mn e -> m (a mn e)
Banded matrix type
newtype Banded mn e Source
Constructors
B (IOBanded mn e)
show/hide Instances
Banded shape
module BLAS.Tensor.Base
module BLAS.Matrix.Base
bandwidth :: BaseBanded a x => a mn e -> (Int, Int)Source
numLower :: BaseBanded a x => a mn e -> IntSource
numUpper :: BaseBanded a x => a mn e -> IntSource
coerceBanded :: BaseBanded a x => a mn e -> a mn' eSource
Cast the shape type of the matrix.
Creating banded matrices
banded :: BLAS1 e => (Int, Int) -> (Int, Int) -> [((Int, Int), e)] -> Banded (m, n) eSource
listsBanded :: BLAS1 e => (Int, Int) -> (Int, Int) -> [[e]] -> Banded (m, n) eSource
unsafeBanded :: BLAS1 e => (Int, Int) -> (Int, Int) -> [((Int, Int), e)] -> Banded (m, n) eSource
Reading banded matrix elements
module BLAS.Tensor.Immutable
Special banded matrices
zeroBanded :: BLAS1 e => (Int, Int) -> (Int, Int) -> Banded (m, n) eSource
constantBanded :: BLAS1 e => (Int, Int) -> (Int, Int) -> e -> Banded (m, n) eSource
Vector views
diagBanded :: BLAS1 e => Banded mn e -> Int -> Vector k eSource
Get a the given diagonal in a banded matrix. Negative indices correspond to sub-diagonals.
unsafeDiagBanded :: BLAS1 e => Banded mn e -> Int -> Vector k eSource
Same as diagBanded but index is not range-checked.
Converting to lists
listsFromBanded :: BLAS1 e => Banded mn e -> ((Int, Int), (Int, Int), [[e]])Source
Low-level properties
ldaOfBanded :: BaseBanded a x => a mn e -> IntSource
isHermBanded :: BaseBanded a x => a mn e -> BoolSource
Matrix and vector multiplication
module BLAS.Matrix.Immutable
Converting between mutable and immutable banded matrices
class UnsafeFreezeBanded a whereSource
Methods
unsafeFreezeBanded :: a mn e -> Banded mn eSource
show/hide Instances
class UnsafeThawBanded a whereSource
Methods
unsafeThawBanded :: Banded mn e -> a mn eSource
show/hide Instances
freezeBanded :: (ReadBanded a x m, WriteBanded b y m, UnsafeFreezeBanded b, BLAS1 e) => a mn e -> m (Banded mn e)Source
thawBanded :: (WriteBanded a y m, BLAS1 e) => Banded mn e -> m (a mn e)Source
Produced by Haddock version 2.3.0