Bridge Statistics
This module implements statistical models for bridge counts and gate probabilities.
Bridge Count Model
- class microscopic_gating.statistics.BridgeCountModel(site_pairs)[source]
Bases:
objectBridge-number statistics for \(N_{\text{pair}}\) independent site pairs.
Implements Eq. (S9)-(S13):
Binomial distribution: Exact distribution with probability \(p_B\)
Poisson approximation: \(\lambda = N_{\text{pair}} \cdot p_B\)
The Poisson approximation is valid when \(N_{\text{pair}}\) is large and \(p_B\) is small.
- Parameters:
site_pairs (
SitePairCount) – Site pair counts containing M and N_acc, from which \(N_{\text{pair}} = M \\times N_{\text{acc}}\) is calculated.
See also
GateModelConverts bridge statistics to gate probabilities.
Examples
>>> from microscopic_gating.types import SitePairCount >>> model = BridgeCountModel(SitePairCount(M=10, N_acc=5)) >>> model.lambda_poisson(0.1) 5.0 >>> model.mean(0.1) 5.0
References
Eq. (S9)-(S13): Bridge count statistics derivation
- site_pairs: SitePairCount
- lambda_poisson(p_B)[source]
Calculate Poisson intensity.
- Parameters:
p_B (
ArrayLike) – Bridge probability per site pair (may be vectorized).- Returns:
lam – Poisson intensity \(\lambda = N_{\text{pair}} \cdot p_B\), same shape as p_B.
- Return type:
ArrayLike
- mean(p_B)[source]
Calculate mean bridge count.
- Parameters:
p_B (
ArrayLike) – Bridge probability per site pair.- Returns:
mean – Expected value \(E[n_b] = N_{\text{pair}} \cdot p_B\).
- Return type:
ArrayLike
- var_binomial(p_B)[source]
Calculate binomial variance.
- Parameters:
p_B (
ArrayLike) – Bridge probability per site pair.- Returns:
var – Variance \(\text{Var}[n_b] = N_{\text{pair}} \cdot p_B \cdot (1 - p_B)\).
- Return type:
ArrayLike
- __init__(site_pairs)
- Parameters:
site_pairs (SitePairCount) –
- Return type:
None
Gate Model
- class microscopic_gating.statistics.GateModel[source]
Bases:
objectGate open/closed probabilities from Poisson bridge statistics.
Implements Eq. (S12), relating the Poisson intensity to gate state probabilities:
\[ \begin{align}\begin{aligned}P_{\text{open}} &= e^{-\lambda}\\P_{\text{closed}} &= 1 - e^{-\lambda}\end{aligned}\end{align} \]The gate is considered “open” when there are zero bridges and “closed” when there is at least one bridge.
Examples
>>> model = GateModel() >>> model.P_open(1.0) 0.3678... >>> model.P_closed(1.0) 0.6321...
References
Eq. (S12): Gate probability from Poisson statistics
- P_open(lam)[source]
Calculate gate open probability.
- Parameters:
lam (
ArrayLike) – Poisson intensity \(\lambda\).- Returns:
P_open – Probability of zero bridges: \(P_{\text{open}} = e^{-\lambda}\).
- Return type:
ArrayLike
- P_closed(lam)[source]
Calculate gate closed probability.
- Parameters:
lam (
ArrayLike) – Poisson intensity \(\lambda\).- Returns:
P_closed – Probability of at least one bridge: \(P_{\text{closed}} = 1 - e^{-\lambda}\).
- Return type:
ArrayLike
- __init__()
- Return type:
None
Theory Background
Bridge counts follow a Poisson distribution with intensity \(\lambda\):
where \(\lambda = N_{\text{pair}} \cdot P_{\text{bridge}}(\phi)\).
Gate Open Probability
The probability of zero bridges (gate open):
Gate Closed Probability
The probability of at least one bridge (gate closed):