pub struct VesiclePool {
pub available_fraction: f64,
pub utilization: f64,
pub baseline_utilization: f64,
pub tau_recovery: f64,
pub tau_facilitation: f64,
pub total_vesicles: usize,
pub docked_vesicles: usize,
pub reserve_pool: usize,
pub recycling_pool: usize,
pub calcium_cooperativity: f64,
pub calcium_half_max: f64,
}Expand description
Vesicle pool dynamics implementing the Tsodyks-Markram model.
The model tracks three pools of vesicles:
- Ready Releasable Pool (RRP) - immediately available for release
- Reserve pool - can be recruited to RRP
- Released/recycling pool - recovering from release
Key equations:
- dx/dt = (1 - x)/τ_rec - Uxδ(t_spike) (recovery from depression)
- du/dt = (U₀ - u)/τ_facil + U₀(1-u)δ(t_spike) (facilitation)
Fields§
§available_fraction: f64Fraction of available vesicles (0 to 1).
utilization: f64Utilization parameter (effective release probability, 0 to 1).
baseline_utilization: f64Baseline utilization (U₀).
tau_recovery: f64Recovery time constant from depression (ms).
tau_facilitation: f64Facilitation time constant (ms).
total_vesicles: usizeTotal number of vesicles in readily releasable pool.
docked_vesicles: usizeNumber of docked vesicles ready for release.
reserve_pool: usizeReserve pool size.
recycling_pool: usizeRecycling pool size.
calcium_cooperativity: f64Calcium sensitivity exponent.
calcium_half_max: f64Half-maximal calcium concentration for release (μM).
Implementations§
Source§impl VesiclePool
impl VesiclePool
Sourcepub fn with_params(
baseline_u: f64,
tau_rec: f64,
tau_facil: f64,
) -> Result<Self>
pub fn with_params( baseline_u: f64, tau_rec: f64, tau_facil: f64, ) -> Result<Self>
Create a vesicle pool with custom parameters.
§Arguments
baseline_u- Baseline utilization (0 to 1)tau_rec- Recovery time constant (ms)tau_facil- Facilitation time constant (ms)
Sourcepub fn depressing() -> Self
pub fn depressing() -> Self
Create a depressing synapse (high U, fast recovery).
Typical for cortical excitatory synapses.
Sourcepub fn facilitating() -> Self
pub fn facilitating() -> Self
Create a facilitating synapse (low U, slow recovery).
Typical for some cortical and hippocampal synapses.
Sourcepub fn update(&mut self, dt: f64) -> Result<()>
pub fn update(&mut self, dt: f64) -> Result<()>
Update vesicle pool dynamics over time.
Implements continuous recovery and facilitation decay.
§Arguments
dt- Time step (ms)
Sourcepub fn calcium_release_probability(&self, calcium_concentration: f64) -> f64
pub fn calcium_release_probability(&self, calcium_concentration: f64) -> f64
Calculate release probability given calcium concentration.
Uses Hill equation: P = [Ca]^n / ([Ca]^n + K^n)
§Arguments
calcium_concentration- Presynaptic calcium concentration (μM)
Sourcepub fn release_probability(&self) -> f64
pub fn release_probability(&self) -> f64
Get current release probability (without calcium dependence).
Trait Implementations§
Source§impl Clone for VesiclePool
impl Clone for VesiclePool
Source§fn clone(&self) -> VesiclePool
fn clone(&self) -> VesiclePool
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more