Copyright | (c) Dominik Schrempf 2021 |
---|---|
License | GPL-3.0-or-later |
Maintainer | dominik.schrempf@gmail.com |
Stability | unstable |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
Creation date: Thu May 14 20:26:27 2020.
Synopsis
- genericContinuous :: (ContDistr d, ContGen d) => d -> (a -> Double -> a) -> Maybe (Double -> Double) -> Maybe (a -> Double -> Jacobian) -> ProposalSimple a
- genericDiscrete :: (DiscreteDistr d, DiscreteGen d) => d -> (a -> Int -> a) -> Maybe (Int -> Int) -> ProposalSimple a
Documentation
:: (ContDistr d, ContGen d) | |
=> d | Probability distribution |
-> (a -> Double -> a) | Forward operator. For example, for a multiplicative proposal on one variable the forward
operator is |
-> Maybe (Double -> Double) | Inverse operator. For example, Required for biased proposals. |
-> Maybe (a -> Double -> Jacobian) | Function to compute the absolute value of the determinant of the Jacobian matrix. For example, for a multiplicative proposal on one variable, we have detJacobian _ u = Exp $ log $ recip u That is, the determinant of the Jacobian matrix of multiplication is just
the reciprocal value of Required for proposals for which absolute value of the determinant of the Jacobian differs from 1.0. Conversion to log domain is necessary, because some determinants of Jacobians are very small (or large). |
-> ProposalSimple a |
Generic function to create proposals for continuous parameters (Double
).
:: (DiscreteDistr d, DiscreteGen d) | |
=> d | Probability distribution. |
-> (a -> Int -> a) | Forward operator, e.g. (+), so that x + dx = x'. |
-> Maybe (Int -> Int) | Inverse operator, e.g., |
-> ProposalSimple a |
Generic function to create proposals for discrete parameters (Int
).