hmatrix-0.1.1.0: Linear algebra and numerical computationsSource codeContentsIndex
Data.Packed.Vector
Portabilityportable
Stabilityprovisional
MaintainerAlberto Ruiz <aruiz@um.es>
Description
A representation of 1D arrays suitable for numeric computations using external libraries.
Synopsis
data Vector t
fromList :: Storable a => [a] -> Vector a
(|>) :: Storable a => Int -> [a] -> Vector a
toList :: Storable a => Vector a -> [a]
dim :: Vector t -> Int
(@>) :: Storable t => Vector t -> Int -> t
subVector :: Storable t => Int -> Int -> Vector t -> Vector t
join :: Storable t => [Vector t] -> Vector t
constant :: Element a => a -> Int -> Vector a
linspace :: Int -> (Double, Double) -> Vector Double
vectorMax :: Vector Double -> Double
vectorMin :: Vector Double -> Double
vectorMaxIndex :: Vector Double -> Int
vectorMinIndex :: Vector Double -> Int
liftVector :: (Storable a, Storable b) => (a -> b) -> Vector a -> Vector b
liftVector2 :: (Storable a, Storable b, Storable c) => (a -> b -> c) -> Vector a -> Vector b -> Vector c
Documentation
data Vector t Source
A one-dimensional array of objects stored in a contiguous memory block.
show/hide Instances
fromList :: Storable a => [a] -> Vector aSource

creates a Vector from a list:

> fromList [2,3,5,7]
4 |> [2.0,3.0,5.0,7.0]
(|>) :: Storable a => Int -> [a] -> Vector aSource
an alternative to fromList with explicit dimension, used also in the instances for Show (Vector a).
toList :: Storable a => Vector a -> [a]Source

extracts the Vector elements to a list

> toList (linspace 5 (1,10))
[1.0,3.25,5.5,7.75,10.0]
dim :: Vector t -> IntSource
number of elements
(@>) :: Storable t => Vector t -> Int -> tSource

Reads a vector position:

> fromList [0..9] @> 7
7.0
subVectorSource
:: Storable t
=> Intindex of the starting element
-> Intnumber of elements to extract
-> Vector tsource
-> Vector tresult

takes a number of consecutive elements from a Vector

> subVector 2 3 (fromList [1..10])
3 |> [3.0,4.0,5.0]
join :: Storable t => [Vector t] -> Vector tSource

creates a new Vector by joining a list of Vectors

> join [fromList [1..5], constant 1 3]
8 |> [1.0,2.0,3.0,4.0,5.0,1.0,1.0,1.0]
constant :: Element a => a -> Int -> Vector aSource

creates a vector with a given number of equal components:

> constant 2 7
7 |> [2.0,2.0,2.0,2.0,2.0,2.0,2.0]
linspace :: Int -> (Double, Double) -> Vector DoubleSource

Creates a real vector containing a range of values:

> linspace 5 (-3,7)
5 |> [-3.0,-0.5,2.0,4.5,7.0]
vectorMax :: Vector Double -> DoubleSource
vectorMin :: Vector Double -> DoubleSource
vectorMaxIndex :: Vector Double -> IntSource
vectorMinIndex :: Vector Double -> IntSource
liftVector :: (Storable a, Storable b) => (a -> b) -> Vector a -> Vector bSource
map on Vectors
liftVector2 :: (Storable a, Storable b, Storable c) => (a -> b -> c) -> Vector a -> Vector b -> Vector cSource
zipWith for Vectors
Produced by Haddock version 2.4.2