Safe Haskell | Safe-Infered |
---|
- reshape :: (Shape sh2, Shape sh1, Repr r1 e) => sh2 -> Array r1 sh1 e -> Array D sh2 e
- append, (++) :: (Shape sh, Repr r1 e, Repr r2 e) => Array r1 (sh :. Int) e -> Array r2 (sh :. Int) e -> Array D (sh :. Int) e
- transpose :: (Shape sh, Repr r e) => Array r ((sh :. Int) :. Int) e -> Array D ((sh :. Int) :. Int) e
- extract :: (Shape sh, Repr r e) => sh -> sh -> Array r sh e -> Array D sh e
- backpermute, unsafeBackpermute :: forall r sh1 sh2 e. (Shape sh1, Shape sh2, Repr r e) => sh2 -> (sh2 -> sh1) -> Array r sh1 e -> Array D sh2 e
- backpermuteDft, unsafeBackpermuteDft :: forall r0 r1 sh1 sh2 e. (Shape sh1, Shape sh2, Repr r0 e, Repr r1 e) => Array r0 sh2 e -> (sh2 -> Maybe sh1) -> Array r1 sh1 e -> Array D sh2 e
- extend, unsafeExtend :: (Slice sl, Shape (FullShape sl), Shape (SliceShape sl), Repr r e) => sl -> Array r (SliceShape sl) e -> Array D (FullShape sl) e
- slice, unsafeSlice :: (Slice sl, Shape (FullShape sl), Shape (SliceShape sl), Repr r e) => Array r (FullShape sl) e -> sl -> Array D (SliceShape sl) e
Documentation
reshape :: (Shape sh2, Shape sh1, Repr r1 e) => sh2 -> Array r1 sh1 e -> Array D sh2 eSource
Impose a new shape on the elements of an array.
The new extent must be the same size as the original, else error
.
append, (++) :: (Shape sh, Repr r1 e, Repr r2 e) => Array r1 (sh :. Int) e -> Array r2 (sh :. Int) e -> Array D (sh :. Int) eSource
Append two arrays.
transpose :: (Shape sh, Repr r e) => Array r ((sh :. Int) :. Int) e -> Array D ((sh :. Int) :. Int) eSource
Transpose the lowest two dimensions of an array. Transposing an array twice yields the original.
Extract a sub-range of elements from an array.
backpermute,unsafeBackpermuteSource
:: forall r sh1 sh2 e . (Shape sh1, Shape sh2, Repr r e) | |
=> sh2 | Extent of result array. |
-> (sh2 -> sh1) | Function mapping each index in the result array to an index of the source array. |
-> Array r sh1 e | Source array. |
-> Array D sh2 e |
Backwards permutation of an array's elements. The result array has the same extent as the original.
backpermuteDft,unsafeBackpermuteDftSource
:: forall r0 r1 sh1 sh2 e . (Shape sh1, Shape sh2, Repr r0 e, Repr r1 e) | |
=> Array r0 sh2 e | Default values ( |
-> (sh2 -> Maybe sh1) | Function mapping each index in the result array to an index in the source array. |
-> Array r1 sh1 e | Source array. |
-> Array D sh2 e |
Default backwards permutation of an array's elements.
If the function returns Nothing
then the value at that index is taken
from the default array (arrDft
)
extend, unsafeExtend :: (Slice sl, Shape (FullShape sl), Shape (SliceShape sl), Repr r e) => sl -> Array r (SliceShape sl) e -> Array D (FullShape sl) eSource
Extend an array, according to a given slice specification.
For example, to replicate the rows of an array use the following:
extend arr (Any :. (5::Int) :. All)
slice, unsafeSlice :: (Slice sl, Shape (FullShape sl), Shape (SliceShape sl), Repr r e) => Array r (FullShape sl) e -> sl -> Array D (SliceShape sl) eSource
Take a slice from an array, according to a given specification.
For example, to take a row from a matrix use the following:
slice arr (Any :. (5::Int) :. All)
To take a column use:
slice arr (Any :. (5::Int))