pub struct NMDANeuron {Show 20 fields
pub v: f64,
pub h: f64,
pub n: f64,
pub s_nmda: f64,
pub g_na: f64,
pub g_k: f64,
pub g_nmda: f64,
pub g_l: f64,
pub e_na: f64,
pub e_k: f64,
pub e_nmda: f64,
pub e_l: f64,
pub c_m: f64,
pub phi: f64,
pub mg_conc: f64,
pub tau_rise: f64,
pub tau_decay: f64,
pub dt: f64,
pub v_threshold: f64,
pub gain: f64,
}Expand description
NMDA receptor neuron — WB base + NMDA-type glutamate receptor current.
NMDA receptors require both glutamate binding (modelled as input current) AND membrane depolarisation (Mg2+ block removal) for activation. The Mg2+ block is voltage-dependent: at rest (-65 mV) channels are blocked, but depolarisation to -40 mV relieves ~80% of the block.
Key mechanism for:
- Coincidence detection: requires presynaptic (glutamate) + postsynaptic (depolarisation) signals simultaneously
- Synaptic plasticity: Ca2+ influx through NMDA triggers LTP/LTD
- Working memory: NMDA-mediated recurrent excitation sustains persistent activity in prefrontal cortex
- Slow synaptic integration: rise ~10 ms, decay ~100 ms
Jahr & Stevens, J Neurosci 10:1830, 1990; Wang, Neuron 22:409, 1999.
Fields§
§v: f64§h: f64§n: f64§s_nmda: f64§g_na: f64§g_k: f64§g_nmda: f64§g_l: f64§e_na: f64§e_k: f64§e_nmda: f64§e_l: f64§c_m: f64§phi: f64§mg_conc: f64§tau_rise: f64§tau_decay: f64§dt: f64§v_threshold: f64§gain: f64Implementations§
Trait Implementations§
Source§impl Clone for NMDANeuron
impl Clone for NMDANeuron
Source§fn clone(&self) -> NMDANeuron
fn clone(&self) -> NMDANeuron
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for NMDANeuron
impl Debug for NMDANeuron
Auto Trait Implementations§
impl Freeze for NMDANeuron
impl RefUnwindSafe for NMDANeuron
impl Send for NMDANeuron
impl Sync for NMDANeuron
impl Unpin for NMDANeuron
impl UnsafeUnpin for NMDANeuron
impl UnwindSafe for NMDANeuron
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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