Safe Haskell | None |
---|
Documentation
type PhysScalar coll a = Array coll aSource
type PhysVector coll dim a = Array (coll, dim) aSource
type PhysMatrix coll rows cols a = Array (coll, (rows, cols)) aSource
type IOScalar p coll a = IO (p -> IO (PhysScalar coll a))Source
type IOVector p coll dim a = IO (p -> IO (PhysVector coll dim a))Source
type IOMatrix p coll rows cols a = IO (p -> IO (PhysMatrix coll rows cols a))Source
dotProduct :: (C coll, C dim, PseudoRing a) => Vector p coll dim a -> Vector p coll dim a -> Scalar p coll aSource
outer :: (C coll, C rows, C cols, PseudoRing a) => Vector p coll rows a -> Vector p coll cols a -> Matrix p coll rows cols aSource
multiplyMatrixVector :: (C coll, C rows, C cols, PseudoRing a) => Matrix p coll rows cols a -> Vector p coll cols a -> Vector p coll rows aSource
multiplyMatrixMatrix :: (C coll, C rows, C glue, C cols, PseudoRing a) => Matrix p coll rows glue a -> Matrix p coll glue cols a -> Matrix p coll rows cols aSource
matrixInverseNewtonStepNaive :: (C coll, C rows, C cols, PseudoRing a) => Matrix p coll rows cols a -> Matrix p coll cols rows a -> Matrix p coll cols rows aSource
matrixInverseNewtonStep :: (C coll, C rows, C cols, PseudoRing a, C a, Storable a, C rows, Storable rows, C cols, Storable cols, C coll, Storable coll, Struct rows ~ rowsstruct, IsSized rowsstruct, Struct cols ~ colsstruct, IsSized colsstruct, Struct coll ~ collstruct, IsSized collstruct) => Matrix p coll rows cols a -> Matrix p coll cols rows a -> IOMatrix p coll cols rows aSource
matrixInverseNewton :: (C coll, C rows, C cols, PseudoRing a, C a, Storable a, C rows, Storable rows, C cols, Storable cols, C coll, Storable coll, Struct rows ~ rowsstruct, IsSized rowsstruct, Struct cols ~ colsstruct, IsSized colsstruct, Struct coll ~ collstruct, IsSized collstruct) => Int -> Matrix p coll rows cols a -> Matrix p coll cols rows a -> IOMatrix p coll cols rows aSource
transpose :: (C coll, C rows, C cols) => Matrix p coll rows cols a -> Matrix p coll cols rows aSource
scaleRows :: (C coll, C rows, C cols, PseudoRing a) => Vector p coll rows a -> Matrix p coll rows cols a -> Matrix p coll rows cols aSource
balanceLeft :: Value val => val (a, (b, c)) -> val ((a, b), c)Source
balanceRight :: Value val => val ((a, b), c) -> val (a, (b, c))Source