Copyright | 2021 Dominik Schrempf |
---|---|
License | GPL-3.0-or-later |
Maintainer | dominik.schrempf@gmail.com |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Creation date: Thu Jul 8 18:12:07 2021.
Synopsis
- type AcceptanceRate = Double
- data AcceptanceCounts = AcceptanceCounts {}
- data Acceptance k
- emptyA :: Ord k => [k] -> Acceptance k
- pushAccept :: Ord k => k -> Acceptance k -> Acceptance k
- pushReject :: Ord k => k -> Acceptance k -> Acceptance k
- pushAcceptanceCounts :: Ord k => k -> AcceptanceCounts -> Acceptance k -> Acceptance k
- resetA :: Ord k => Acceptance k -> Acceptance k
- transformKeysA :: (Ord k1, Ord k2) => [(k1, k2)] -> Acceptance k1 -> Acceptance k2
- acceptanceRate :: Ord k => k -> Acceptance k -> Maybe (Int, Int, AcceptanceRate)
- acceptanceRates :: Acceptance k -> Map k (Maybe AcceptanceRate)
Acceptance rates
type AcceptanceRate = Double Source #
Acceptance rate.
data AcceptanceCounts Source #
Number of accepted and rejected proposals.
Instances
data Acceptance k Source #
For each key k
, store the number of accepted and rejected proposals.
Instances
(Ord k, FromJSONKey k) => FromJSON (Acceptance k) Source # | |
Defined in Mcmc.Acceptance parseJSON :: Value -> Parser (Acceptance k) # parseJSONList :: Value -> Parser [Acceptance k] # | |
ToJSONKey k => ToJSON (Acceptance k) Source # | |
Defined in Mcmc.Acceptance toJSON :: Acceptance k -> Value # toEncoding :: Acceptance k -> Encoding # toJSONList :: [Acceptance k] -> Value # toEncodingList :: [Acceptance k] -> Encoding # | |
Show k => Show (Acceptance k) Source # | |
Defined in Mcmc.Acceptance showsPrec :: Int -> Acceptance k -> ShowS # show :: Acceptance k -> String # showList :: [Acceptance k] -> ShowS # | |
Eq k => Eq (Acceptance k) Source # | |
Defined in Mcmc.Acceptance (==) :: Acceptance k -> Acceptance k -> Bool # (/=) :: Acceptance k -> Acceptance k -> Bool # |
emptyA :: Ord k => [k] -> Acceptance k Source #
In the beginning there was the Word.
Initialize an empty storage of accepted/rejected values.
pushAccept :: Ord k => k -> Acceptance k -> Acceptance k Source #
For key k
, add an accept.
pushReject :: Ord k => k -> Acceptance k -> Acceptance k Source #
For key k
, add a reject.
pushAcceptanceCounts :: Ord k => k -> AcceptanceCounts -> Acceptance k -> Acceptance k Source #
For key k
, add acceptance counts.
resetA :: Ord k => Acceptance k -> Acceptance k Source #
Reset acceptance counts.
transformKeysA :: (Ord k1, Ord k2) => [(k1, k2)] -> Acceptance k1 -> Acceptance k2 Source #
Transform keys using the given lists. Keys not provided will not be present
in the new Acceptance
variable.
acceptanceRate :: Ord k => k -> Acceptance k -> Maybe (Int, Int, AcceptanceRate) Source #
Acceptance counts and rate for a specific proposal.
Return Just (accepts, rejects, acceptance rate)
.
Return Nothing
if no proposals have been accepted or rejected (division by
zero).
acceptanceRates :: Acceptance k -> Map k (Maybe AcceptanceRate) Source #
Acceptance rates for all proposals.
Set rate to Nothing
if no proposals have been accepted or rejected
(division by zero).