pub struct GammaMotorNeuron {
pub v: f64,
pub v_rest: f64,
pub v_reset: f64,
pub v_threshold: f64,
pub tau: f64,
pub adapt: f64,
pub tau_adapt: f64,
pub a_adapt: f64,
pub gain: f64,
pub dynamic: bool,
pub dt: f64,
}Expand description
Gamma motor neuron — innervates intrafusal fibres of muscle spindles.
Regulates proprioceptive sensitivity by adjusting spindle tension.
Smaller soma than alpha, lower firing rates (5-30 Hz), no PIC.
Simple LIF with spike-frequency adaptation (slow K+ current).
Two subtypes: dynamic (bag1, velocity-sensitive) and static
(bag2/chain, length-sensitive) — controlled by dynamic flag.
Prochazka & Hulliger, Prog. Brain Res. 80, 1989. Taylor et al., J. Physiol. 519(3), 1999.
Fields§
§v: f64§v_rest: f64§v_reset: f64§v_threshold: f64§tau: f64§adapt: f64§tau_adapt: f64§a_adapt: f64§gain: f64§dynamic: bool§dt: f64Implementations§
Source§impl GammaMotorNeuron
impl GammaMotorNeuron
pub fn new() -> Self
Sourcepub fn dynamic() -> Self
pub fn dynamic() -> Self
Dynamic gamma — innervates bag1 intrafusal fibres (velocity-sensitive).
Sourcepub fn static_type() -> Self
pub fn static_type() -> Self
Static gamma — innervates bag2/chain intrafusal fibres (length-sensitive).
Sourcepub fn step(&mut self, drive: f64) -> i32
pub fn step(&mut self, drive: f64) -> i32
Step with fusimotor drive (arbitrary units, ≥ 0). Returns spike (1/0).
pub fn reset(&mut self)
Trait Implementations§
Source§impl Clone for GammaMotorNeuron
impl Clone for GammaMotorNeuron
Source§fn clone(&self) -> GammaMotorNeuron
fn clone(&self) -> GammaMotorNeuron
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 GammaMotorNeuron
impl Debug for GammaMotorNeuron
Auto Trait Implementations§
impl Freeze for GammaMotorNeuron
impl RefUnwindSafe for GammaMotorNeuron
impl Send for GammaMotorNeuron
impl Sync for GammaMotorNeuron
impl Unpin for GammaMotorNeuron
impl UnsafeUnpin for GammaMotorNeuron
impl UnwindSafe for GammaMotorNeuron
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