jonathanfishbein1 / linear-algebra / ColumnVector

A module for Column Vectors

Types


type ColumnVector a
    = ColumnVector (Vector a)

Column Vector

Unitary Operations

sum : Monoid a -> ColumnVector a -> a

Calculate the sum of a Vector

scalarMultiplication : Field a -> a -> ColumnVector a -> ColumnVector a

Scalar multiplication over a ColumnVector

conjugate : ColumnVector (ComplexNumbers.ComplexNumber number) -> ColumnVector (ComplexNumbers.ComplexNumber number)

Take the complex conjugate of a Complex Numbered ColumnVector

lengthReal : ColumnVector (Real Basics.Float) -> Real Basics.Float

Calculate the length of a Real valued Vector

lengthComplex : ColumnVector (ComplexNumbers.ComplexNumber Basics.Float) -> Real Basics.Float

Calculate the length of a Complex valued Vector

normaliseReal : ColumnVector (Real Basics.Float) -> ColumnVector (Real Basics.Float)

Adjust a real valued column vector so that its length is exactly one

normaliseComplex : ColumnVector (ComplexNumbers.ComplexNumber Basics.Float) -> ColumnVector (ComplexNumbers.ComplexNumber Basics.Float)

Adjust a complex valued column vector so that its length is exactly one

Binary Operations

add : Field a -> ColumnVector a -> ColumnVector a -> ColumnVector a

Add two ColumnVectors

dotProduct : Field a -> ColumnVector a -> ColumnVector a -> a

Calculate the dot product of two Vectors

distanceReal : ColumnVector (Real Basics.Float) -> ColumnVector (Real Basics.Float) -> Real Basics.Float

Calculate distance between two vectors

distanceComplex : ColumnVector (ComplexNumbers.ComplexNumber Basics.Float) -> ColumnVector (ComplexNumbers.ComplexNumber Basics.Float) -> Real Basics.Float

Calculate distance between two vectors

ColumnVector Properties

dimension : ColumnVector a -> Basics.Int

Count of number of elements in a Ket

Semigroup, Functor, Applicative, Monad, Foldable

empty : ColumnVector a

Monoid empty for Vector

map : (a -> b) -> ColumnVector a -> ColumnVector b

map over a RowVector

foldl : (a -> b -> b) -> b -> ColumnVector a -> b

Left fold over a RowVector

Equality

equal : (a -> a -> Basics.Bool) -> Typeclasses.Classes.Equality.Equality (ColumnVector a)

Equal type for Vector.

Manipulation

getAt : Basics.Int -> ColumnVector a -> Maybe a

Get the value in a Column Vector at the specified index

setAt : Basics.Int -> a -> ColumnVector a -> ColumnVector a

Set the value in a Column Vector at the specified index