Transport Models
This module implements transport models that connect bridge dynamics to effective diffusion coefficients.
Jump Diffusion
- class microscopic_gating.transport.JumpDiffusion(step_length, dim=3)[source]
Bases:
objectJump diffusion mapping between escape rate and effective diffusion.
Implements Eq. (S38)-(S39) for relating microscopic escape dynamics to macroscopic diffusion:
\[ \begin{align}\begin{aligned}\tau_{\text{res}} &= 1/k_{\text{esc}}\\D_{\text{eff}}(n_b) &= \frac{\ell^2}{2d}k_{\text{esc}}(n_b), \quad d=3\end{aligned}\end{align} \]- Parameters:
Examples
>>> jd = JumpDiffusion(step_length=1.0, dim=3) >>> jd.tau_res(0.5) 2.0 >>> jd.D_eff(0.5) 0.0833...
References
Eq. (S38): Residence time definition
Eq. (S39): Effective diffusion from escape rate
- tau_res(k_esc)[source]
Calculate residence time.
- Parameters:
k_esc (
ArrayLike) – Escape rate (1/time units).- Returns:
tau – Residence time \(\tau_{\text{res}} = 1/k_{\text{esc}}\), same shape as k_esc.
- Return type:
ArrayLike
Poisson Escape Averaging
- class microscopic_gating.transport.PoissonEscapeAveraging[source]
Bases:
objectAverage escape rate over Poisson-distributed bridge counts.
Implements Eq. (S41) and provides the closed-form Eq. (S43) under the exponential-in-\(n_b\) rate ansatz Eq. (S42).
For \(k_{\text{esc}}(n_b) = \tilde{k}_0 \exp(-\alpha n_b)\) and \(n_b \sim \text{Poisson}(\lambda)\):
\[k_{\text{esc}}(\phi) = \tilde{k}_0 \exp[-\lambda(1-e^{-\alpha})]\]Examples
>>> averaging = PoissonEscapeAveraging() >>> averaging.kesc_closed_form(k_tilde0=1.0, lam=2.0, alpha=0.5) 0.243...
References
Eq. (S41): General Poisson average
Eq. (S42): Exponential rate ansatz
Eq. (S43): Closed-form solution
- kesc_closed_form(k_tilde0, lam, alpha)[source]
Calculate closed-form Poisson average (Eq. S43).
- Parameters:
- Returns:
k_esc – Averaged escape rate, same shape as lam.
- Return type:
ArrayLike
- kesc_sum(k_nb, P_nb)[source]
Calculate generic discrete average \(\sum_n P(n) k(n)\).
- Parameters:
k_nb (
ArrayLike) – Array of \(k(n)\) values.P_nb (
ArrayLike) – Array of probabilities \(P(n)\), same shape as k_nb.
- Returns:
k_avg – Weighted average \(\sum_n P(n) k(n)\).
- Return type:
- __init__()
- Return type:
None
Concentration Dependent Diffusion
- class microscopic_gating.transport.ConcentrationDependentDiffusion(beta, D_free, epsilon_eff)[source]
Bases:
objectConcentration-dependent effective diffusion from gating-derived \(\lambda(\phi)\).
Implements Eq. (S45):
\[D_{\text{eff}}(\phi) = D_{\text{free}} \exp[-\lambda(\phi)(1-e^{-\beta\epsilon_{\text{eff}}})]\]- Parameters:
Examples
>>> cdd = ConcentrationDependentDiffusion(beta=1.0, D_free=1.0, epsilon_eff=1.0) >>> cdd.D_eff(1.0) 0.531...
References
Eq. (S45): Concentration-dependent diffusion expression
Theory Background
Jump Diffusion Mapping
The residence time and effective diffusion are related to the escape rate:
where \(\ell\) is the jump length and \(d\) is the spatial dimension.
Poisson Averaging
When the escape rate depends exponentially on bridge count:
The Poisson-averaged rate has a closed form:
Concentration-Dependent Diffusion
The full expression for effective diffusion: