| Portability | portable |
|---|---|
| Stability | provisional |
| Maintainer | Edward Kmett <ekmett@gmail.com> |
| Safe Haskell | Safe-Inferred |
Linear.Vector
Description
Operations on free vector spaces.
- (^+^) :: (Applicative f, Num a) => f a -> f a -> f a
- gnegate :: (Functor f, Num a) => f a -> f a
- (^-^) :: (Applicative f, Num a) => f a -> f a -> f a
- (^*) :: (Functor f, Num a) => f a -> a -> f a
- (*^) :: (Functor f, Num a) => a -> f a -> f a
- (^/) :: (Functor f, Fractional a) => f a -> a -> f a
- lerp :: (Applicative f, Num a) => a -> f a -> f a -> f a
Documentation
(^+^) :: (Applicative f, Num a) => f a -> f a -> f aSource
Compute the sum of two vectors
>>>V2 1 2 ^+^ V2 3 4V2 4 6
gnegate :: (Functor f, Num a) => f a -> f aSource
Compute the negation of a vector
>>>gnegate (V2 2 4)V2 (-2) (-4)
(^-^) :: (Applicative f, Num a) => f a -> f a -> f aSource
Compute the difference between two vectors
>>>V2 4 5 - V2 3 1V2 1 4
(^*) :: (Functor f, Num a) => f a -> a -> f aSource
Compute the right scalar product
>>>V2 3 4 ^* 2V2 6 8
(*^) :: (Functor f, Num a) => a -> f a -> f aSource
Compute the left scalar product
>>>2 *^ V2 3 4V2 6 8
(^/) :: (Functor f, Fractional a) => f a -> a -> f aSource
Compute division by a scalar on the right.
lerp :: (Applicative f, Num a) => a -> f a -> f a -> f aSource
Linearly interpolate between two vectors.