pub struct DurstewitzDopamineNeuron {Show 18 fields
pub v: f64,
pub h_na: f64,
pub n_k: 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 mg: f64,
pub d1_level: f64,
pub g_nmda_scale: f64,
pub g_k_scale: f64,
pub v_shift_na: f64,
pub dt: f64,
pub v_threshold: f64,
}Expand description
Durstewitz PFC neuron with D1 dopamine modulation. Durstewitz et al. 2000.
Fields§
§v: f64§h_na: f64§n_k: 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§mg: f64§d1_level: f64§g_nmda_scale: f64§g_k_scale: f64§v_shift_na: f64§dt: f64§v_threshold: f64Implementations§
Source§impl DurstewitzDopamineNeuron
impl DurstewitzDopamineNeuron
pub fn new() -> Self
Sourcefn derivatives(&self, v: f64, h_na: f64, n_k: f64, current: f64) -> [f64; 3]
fn derivatives(&self, v: f64, h_na: f64, n_k: f64, current: f64) -> [f64; 3]
Right-hand side (dV, dh_na, dn_k) evaluated from one consistent state.
The sodium activation m_∞ is instantaneous, so it is recomputed from
v at every RK4 stage. The conductance powers use explicit multiplication
and the Mg²⁺ block keeps the mg / 3.57 * exp operand order so the
Python, Julia, Go, and Mojo backends reproduce the trajectory bit-for-bit.
Sourcefn rk4_substep(&self, s: [f64; 3], current: f64) -> [f64; 3]
fn rk4_substep(&self, s: [f64; 3], current: f64) -> [f64; 3]
One classical RK4 increment of the (V, h_na, n_k) vector over dt.
pub fn step(&mut self, current: f64) -> i32
pub fn reset(&mut self)
Trait Implementations§
Source§impl Clone for DurstewitzDopamineNeuron
impl Clone for DurstewitzDopamineNeuron
Source§fn clone(&self) -> DurstewitzDopamineNeuron
fn clone(&self) -> DurstewitzDopamineNeuron
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 DurstewitzDopamineNeuron
impl Debug for DurstewitzDopamineNeuron
Auto Trait Implementations§
impl Freeze for DurstewitzDopamineNeuron
impl RefUnwindSafe for DurstewitzDopamineNeuron
impl Send for DurstewitzDopamineNeuron
impl Sync for DurstewitzDopamineNeuron
impl Unpin for DurstewitzDopamineNeuron
impl UnsafeUnpin for DurstewitzDopamineNeuron
impl UnwindSafe for DurstewitzDopamineNeuron
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§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.