Numeric.LinearAlgebra.Array
 Portability portable Stability provisional Maintainer Alberto Ruiz
Description

Simple multidimensional array with useful numeric instances.

Contractions only require equal dimension.

Synopsis
 data None = None type Array t = NArray None t listArray :: Coord t => [Int] -> [t] -> Array t scalar :: Coord t => t -> NArray i t index :: Coord t => Name -> [Array t] -> Array t (!) :: (Compat i, Coord t) => NArray i t -> [Char] -> NArray i t (!>) :: (Compat i, Coord t) => NArray i t -> [Char] -> NArray i t (~>) :: Coord t => NArray i t -> String -> NArray i t (.*) :: (Coord a, Compat i) => NArray i a -> NArray i a -> NArray i a printA :: (Coord t, Compat i, PrintfArg t) => String -> NArray i t -> IO ()
Documentation
 data None Source
Unespecified coordinate type. Contractions only require equal dimension.
Constructors
 None
Instances
 Eq None Show None Compat None Show (Idx None)
 type Array t = NArray None t Source
Multidimensional array with unespecified coordinate type.
 listArray Source
 :: Coord t => [Int] elements -> [t] -> Array t Construction of an Array from a list of dimensions and a list of elements in left to right order.
 scalar :: Coord t => t -> NArray i t Source
Create a 0-dimensional structure.
 index :: Coord t => Name -> [Array t] -> Array t Source
Create an Array from a list of parts (index = newIndex None).
 (!) :: (Compat i, Coord t) => NArray i t -> [Char] -> NArray i t Source
Rename indices in alphabetical order (renameO) using single letter names.
 (!>) :: (Compat i, Coord t) => NArray i t -> [Char] -> NArray i t Source

Explicit renaming of single letter index names.

For instance, t >@> "pi qj" changes index "p" to "i" and "q" to "j".

 (~>) :: Coord t => NArray i t -> String -> NArray i t Source

reorder (transpose) dimensions of the array (with single letter names).

Operations are defined by named indices, so the transposed array is operationally equivalent to the original one.

 (.*) :: (Coord a, Compat i) => NArray i a -> NArray i a -> NArray i a Source
Element by element product.
 printA :: (Coord t, Compat i, PrintfArg t) => String -> NArray i t -> IO () Source
Print the array as a nested table with the desired format (e.g. %7.2f) (see also formatArray, and formatScaled).