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
fn prior_prob(
&self,
af1: AlleleFreq,
af2: AlleleFreq,
variant: &Variant
) -> LogProb
&self,
af1: AlleleFreq,
af2: AlleleFreq,
variant: &Variant
) -> LogProb
Calculate prior probability of given combination of allele frequencies.
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,
&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,
Calculate joint probability of prior with likelihoods for given allele frequency ranges.
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,
&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,
Calculate marginal probability.
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,
&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,
Calculate maximum a posteriori probability estimate of allele frequencies.
fn allele_freqs(&self) -> (&A, &B)
Return allele frequency spectra.
Implementors
impl PairModel<ContinuousAlleleFreqs, DiscreteAlleleFreqs> for TumorNormalModel
impl PairModel<DiscreteAlleleFreqs, ContinuousAlleleFreqs> for SingleCellBulkModel
impl PairModel<DiscreteAlleleFreqs, DiscreteAlleleFreqs> for FlatNormalNormalModel
impl PairModel<ContinuousAlleleFreqs, DiscreteAlleleFreqs> for FlatTumorNormalModel