pub struct GapJunctionNeuron {}Expand description
Neuron with electrical synapse (gap junction) coupling.
Models neurons coupled via connexin-based gap junctions that allow direct electrical current flow between cells. Found extensively in:
- Inferior olive neurons (climbing fibre system)
- Retinal ganglion cells (coupled networks)
- Cortical interneuron networks (PV+ basket cell syncytia)
- Thalamic reticular nucleus
Includes voltage-dependent rectification (Cx36 gating): g_eff = g_gap * g_inf(V_j) g_inf = g_min + (1 - g_min) / (1 + exp(A * (|V_j| - V_0)))
where V_j = V_neighbor - V is the transjunctional voltage, g_min is the residual conductance at large V_j, V_0 is the half-inactivation voltage (~30 mV for Cx36), and A is the voltage sensitivity (~0.1 mV⁻¹).
At small |V_j| < V_0: near-full conductance (bidirectional). At large |V_j| > V_0: conductance drops to g_min (rectification).
C dV/dt = -g_L(V - E_L) + g_eff * (V_neighbor - V) + I_tonic
Connors & Long, Annu Rev Neurosci 27:393, 2004. Vervaeke et al., Neuron 65:801, 2010 (Cx36 voltage gating).
Fields§
§v: f64§c_m: f64§g_l: f64§e_l: f64§g_gap: f64§i_tonic: f64§v_threshold: f64§v_reset: f64§refractory: f64§refrac_timer: f64§rect_v0: f64§rect_a: f64§rect_gmin: f64§dt: f64§gain: f64Implementations§
Source§impl GapJunctionNeuron
impl GapJunctionNeuron
pub fn new() -> Self
Sourcefn rect_conductance(&self, v_j: f64) -> f64
fn rect_conductance(&self, v_j: f64) -> f64
Voltage-dependent gap junction conductance (Cx36 gating).
g_inf = g_min + (1 - g_min) / (1 + exp(A * (|V_j| - V_0)))
Symmetric in |V_j|: rectification acts for both polarities.
pub fn step(&mut self, current: f64) -> i32
pub fn reset(&mut self)
Trait Implementations§
Source§impl Clone for GapJunctionNeuron
impl Clone for GapJunctionNeuron
Source§fn clone(&self) -> GapJunctionNeuron
fn clone(&self) -> GapJunctionNeuron
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for GapJunctionNeuron
impl Debug for GapJunctionNeuron
Auto Trait Implementations§
impl Freeze for GapJunctionNeuron
impl RefUnwindSafe for GapJunctionNeuron
impl Send for GapJunctionNeuron
impl Sync for GapJunctionNeuron
impl Unpin for GapJunctionNeuron
impl UnsafeUnpin for GapJunctionNeuron
impl UnwindSafe for GapJunctionNeuron
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more