| Copyright | (c) Edward Kmett 2010-2021 | 
|---|---|
| License | BSD3 | 
| Maintainer | ekmett@gmail.com | 
| Stability | experimental | 
| Portability | GHC only | 
| Safe Haskell | Safe-Inferred | 
| Language | Haskell2010 | 
Numeric.AD.Jacobian
Description
Synopsis
- class (Mode t, Mode (D t), Num (D t)) => Jacobian t where
- type D t :: *
 - unary :: (Scalar t -> Scalar t) -> D t -> t -> t
 - lift1 :: (Scalar t -> Scalar t) -> (D t -> D t) -> t -> t
 - lift1_ :: (Scalar t -> Scalar t) -> (D t -> D t -> D t) -> t -> t
 - binary :: (Scalar t -> Scalar t -> Scalar t) -> D t -> D t -> t -> t -> t
 - lift2 :: (Scalar t -> Scalar t -> Scalar t) -> (D t -> D t -> (D t, D t)) -> t -> t -> t
 - lift2_ :: (Scalar t -> Scalar t -> Scalar t) -> (D t -> D t -> D t -> (D t, D t)) -> t -> t -> t
 
 
Documentation
class (Mode t, Mode (D t), Num (D t)) => Jacobian t where Source #
Jacobian is useful for defining new AD primitives in a
 fairly generic way.
Methods
unary :: (Scalar t -> Scalar t) -> D t -> t -> t Source #
lift1 :: (Scalar t -> Scalar t) -> (D t -> D t) -> t -> t Source #
lift1_ :: (Scalar t -> Scalar t) -> (D t -> D t -> D t) -> t -> t Source #
binary :: (Scalar t -> Scalar t -> Scalar t) -> D t -> D t -> t -> t -> t Source #
lift2 :: (Scalar t -> Scalar t -> Scalar t) -> (D t -> D t -> (D t, D t)) -> t -> t -> t Source #
lift2_ :: (Scalar t -> Scalar t -> Scalar t) -> (D t -> D t -> D t -> (D t, D t)) -> t -> t -> t Source #