Numeric.LinearAlgebra.Tensor
 Stability experimental Maintainer Alberto Ruiz
 Contents The Tensor type Tensor creation utilities Index manipulation General array operations
Description
Tensor computations. Indices can only be contracted if they are of different Variant type.
Synopsis
type Tensor t = NArray Variant t
data Variant
 = Co | Contra
listTensor :: Coord t => [Int] -> [t] -> Tensor t
superindex :: Coord t => Name -> [Tensor t] -> Tensor t
subindex :: Coord t => Name -> [Tensor t] -> Tensor t
vector :: [Double] -> Tensor Double
covector :: [Double] -> Tensor Double
transf :: [[Double]] -> Tensor Double
switch :: Tensor t -> Tensor t
cov :: NArray i t -> Tensor t
contrav :: NArray i t -> Tensor t
forget :: NArray i t -> Array t
module Numeric.LinearAlgebra.Array
The Tensor type
 type Tensor t = NArray Variant t Source
 data Variant Source
Constructors
 Co Contra
Instances
 Eq Variant Compat Variant Show (Idx Variant)
 listTensor Source
 :: Coord t => [Int] coordinates -> [t] -> Tensor t Creates a tensor from a list of dimensions and a list of coordinates. A positive dimension means that the index is assumed to be contravariant (vector-like), and a negative dimension means that the index is assumed to be covariant (like a linear function, or covector). Contractions can only be performed between indices of different type.
Tensor creation utilities
 superindex :: Coord t => Name -> [Tensor t] -> Tensor t Source
Create an Tensor from a list of parts with a contravariant index (superindex = newIndex Contra).
 subindex :: Coord t => Name -> [Tensor t] -> Tensor t Source
Create an Tensor from a list of parts with a covariant index (subindex = newIndex Co).
 vector :: [Double] -> Tensor Double Source
Create a contravariant rank-1 tensor from a list of coordinates.
 covector :: [Double] -> Tensor Double Source
Create a covariant rank-1 tensor from a list of coordinates.
 transf :: [[Double]] -> Tensor Double Source
Create a 1-contravariant, 1-covariant rank-2 tensor from list of lists of coordinates.
Index manipulation
 switch :: Tensor t -> Tensor t Source
Change the Variant nature of all dimensions to the opposite ones.
 cov :: NArray i t -> Tensor t Source
Make all dimensions covariant.
 contrav :: NArray i t -> Tensor t Source
Make all dimensions contravariant.
 forget :: NArray i t -> Array t Source
Remove the Variant nature of coordinates.
General array operations
module Numeric.LinearAlgebra.Array