Trait libprosic::model::priors::PairModel [] [src]

pub trait PairModel<A: AlleleFreqs, B: AlleleFreqs> {
    fn prior_prob(
        &self,
        af1: AlleleFreq,
        af2: AlleleFreq,
        variant: &Variant
    ) -> LogProb; fn joint_prob<L, O>(
        &self,
        af1: &A,
        af2: &B,
        likelihood1: &L,
        likelihood2: &O,
        variant: &Variant,
        n_obs1: usize,
        n_obs2: usize
    ) -> LogProb
    where
        L: Fn(AlleleFreq, Option<AlleleFreq>) -> LogProb,
        O: Fn(AlleleFreq, Option<AlleleFreq>) -> LogProb
; fn marginal_prob<L, O>(
        &self,
        likelihood1: &L,
        likelihood2: &O,
        variant: &Variant,
        n_obs1: usize,
        n_obs2: usize
    ) -> LogProb
    where
        L: Fn(AlleleFreq, Option<AlleleFreq>) -> LogProb,
        O: Fn(AlleleFreq, Option<AlleleFreq>) -> LogProb
; fn map<L, O>(
        &self,
        likelihood1: &L,
        likelihood2: &O,
        variant: &Variant,
        n_obs1: usize,
        n_obs2: usize
    ) -> (AlleleFreq, AlleleFreq)
    where
        L: Fn(AlleleFreq, Option<AlleleFreq>) -> LogProb,
        O: Fn(AlleleFreq, Option<AlleleFreq>) -> LogProb
; fn allele_freqs(&self) -> (&A, &B); }

A prior model for sample pairs.

Required Methods

Calculate prior probability of given combination of allele frequencies.

Calculate joint probability of prior with likelihoods for given allele frequency ranges.

Calculate marginal probability.

Calculate maximum a posteriori probability estimate of allele frequencies.

Return allele frequency spectra.

Implementors