Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Synopsis
- x4 :: Num a => Vector4 a
- y4 :: Num a => Vector4 a
- z4 :: Num a => Vector4 a
- t4 :: Num a => Vector4 a
- dx4 :: forall {str :: Type -> Type} {a}. (Infinitesimal str a, Num (Closure str a)) => Vector4 (Closure str a)
- dy4 :: forall {str :: Type -> Type} {a}. (Infinitesimal str a, Num (Closure str a)) => Vector4 (Closure str a)
- dz4 :: forall {str :: Type -> Type} {a}. (Infinitesimal str a, Num (Closure str a)) => Vector4 (Closure str a)
- dt4 :: forall {str :: Type -> Type} {a}. (Infinitesimal str a, Num (Closure str a)) => Vector4 (Closure str a)
- setx4 :: s -> Vector4 s -> Vector4 s
- sety4 :: s -> Vector4 s -> Vector4 s
- setz4 :: s -> Vector4 s -> Vector4 s
- sett4 :: s -> Vector4 s -> Vector4 s
- update_row4 :: g a -> Vector4 ((Vector4 :*: g) a -> (Vector4 :*: g) a)
- update_column4 :: Applicative f => f a -> Vector4 ((f :*: Vector4) a -> (f :*: Vector4) a)
- type Matrix4 a = (Vector4 :*: Vector4) a
- codiag4 :: (Vector4 :*: Vector4) a -> Codiagonal Vector4 a
- matrix4 :: Vector4 a -> Codiagonal Vector4 a -> (Vector4 :*: Vector4) a
- diagonal_projections4 :: Num a => Vector4 (Index Vector4 a)
- cycle4 :: Vector4 a -> Stream a
- vector4 :: [a] -> Vector4 a
- unzipV4 :: Vector4 (a, b) -> (Vector4 a, Vector4 b)
- constant4 :: a -> Vector4 a
- dim4 :: Vector4 Integer
- sum_coordinates4 :: Num a => Vector4 a -> a
- left_multiply4_gen :: (Functor f, Num a, ConjugateSymmetric a) => Vector4 a -> (f :*: Vector4) a -> f a
- right_multiply4_gen :: (VectorSpace (f a), ConjugateSymmetric a, Scalar (f a) ~ a) => (Vector4 :*: f) a -> Vector4 a -> f a
- matrix_multiply4 :: (Num a, ConjugateSymmetric a) => Matrix4 a -> Matrix4 a -> Matrix4 a
- dot4 :: (Num a, ConjugateSymmetric a) => Vector4 a -> Vector4 a -> a
- versor :: (Floating a, ConjugateSymmetric a) => Vector4 a -> Vector4 a
- index4 :: Int -> Vector4 a -> a
- diagonal4 :: (Vector4 :*: Vector4) a -> Vector4 a
- dt_4 :: Num s => s -> Vector4 s -> Vector4 s
- dx_4 :: Num s => s -> Vector4 s -> Vector4 s
- dy_4 :: Num s => s -> Vector4 s -> Vector4 s
- dz_4 :: Num s => s -> Vector4 s -> Vector4 s
- transpose4 :: Num a => Matrix4 a -> Matrix4 a
- transpose4_impl :: Matrix4 a -> Matrix4 a
- identity4 :: Num a => Matrix4 a
- diagonal4x :: Matrix4 a -> Vector4 a
- zero_codiagonal4 :: Num a => Codiagonal Vector4 a
- diagonal_matrix4 :: Num a => Vector4 a -> (Vector4 :*: Vector4) a
- mat4 :: Vector4 a -> Codiagonal Vector4 a -> (Vector4 :*: Vector4) a
- trace4 :: Num a => Matrix4 a -> a
- removet4 :: Vector4 a -> Vector3 a
- removex4 :: Vector4 a -> Vector3 a
- removey4 :: Vector4 a -> Vector3 a
- removez4 :: Vector4 a -> Vector3 a
- removes4 :: Vector4 (Vector4 a -> Vector3 a)
- remove_index4 :: Matrix4 a -> Matrix4 (Matrix3 a)
- cofactor4 :: Num a => Matrix4 a -> Matrix4 a
- adjucate4 :: Num a => Matrix4 a -> Matrix4 a
- signs4 :: Integral a => Matrix4 a
- vector_indices4 :: Integral a => Vector4 a
- matrix_indices4 :: Integral a => (Vector4 :*: Vector4) (a, a)
- inverse4 :: Fractional a => Matrix4 a -> Matrix4 a
- cross4 :: Num a => Vector4 a -> Vector4 a -> Vector4 a -> Vector4 a
- cross_product4 :: Num a => (Vector3 :*: Vector4) a -> Vector4 a
- determinant4 :: Num a => Matrix4 a -> a
Documentation
dx4 :: forall {str :: Type -> Type} {a}. (Infinitesimal str a, Num (Closure str a)) => Vector4 (Closure str a) Source #
dy4 :: forall {str :: Type -> Type} {a}. (Infinitesimal str a, Num (Closure str a)) => Vector4 (Closure str a) Source #
dz4 :: forall {str :: Type -> Type} {a}. (Infinitesimal str a, Num (Closure str a)) => Vector4 (Closure str a) Source #
dt4 :: forall {str :: Type -> Type} {a}. (Infinitesimal str a, Num (Closure str a)) => Vector4 (Closure str a) Source #
update_column4 :: Applicative f => f a -> Vector4 ((f :*: Vector4) a -> (f :*: Vector4) a) Source #
sum_coordinates4 :: Num a => Vector4 a -> a Source #
left_multiply4_gen :: (Functor f, Num a, ConjugateSymmetric a) => Vector4 a -> (f :*: Vector4) a -> f a Source #
right_multiply4_gen :: (VectorSpace (f a), ConjugateSymmetric a, Scalar (f a) ~ a) => (Vector4 :*: f) a -> Vector4 a -> f a Source #
matrix_multiply4 :: (Num a, ConjugateSymmetric a) => Matrix4 a -> Matrix4 a -> Matrix4 a Source #
transpose4_impl :: Matrix4 a -> Matrix4 a Source #
diagonal4x :: Matrix4 a -> Vector4 a Source #
zero_codiagonal4 :: Num a => Codiagonal Vector4 a Source #
vector_indices4 :: Integral a => Vector4 a Source #
cross4 :: Num a => Vector4 a -> Vector4 a -> Vector4 a -> Vector4 a Source #
Generalization of cross product to four dimensions This is computed using formal determinant representation of cross product expanded to four dimensions https://en.wikipedia.org/wiki/Cross_product This computes vector that is linearly independent of all three vectors given in four dimensional space.
determinant4 :: Num a => Matrix4 a -> a Source #