pub struct WongWangUnit {}Expand description
Four dynamic states of one reduced Wong-Wang decision circuit.
Fields§
§s1: f64§s2: f64§noise1: f64§noise2: f64§tau_s: f64§tau_ampa: f64§gamma: f64§j_n: f64§j_cross: f64§i_0: f64§sigma: f64§dt: f64§rng: Xoshiro256PlusPlusImplementations§
Source§impl WongWangUnit
impl WongWangUnit
Sourcepub fn new(seed: u64) -> Self
pub fn new(seed: u64) -> Self
Construct the published parameter set with a reproducible RNG stream.
Sourcepub fn with_parameters(
s1: f64,
s2: f64,
noise1: f64,
noise2: f64,
tau_s: f64,
tau_ampa: f64,
gamma: f64,
j_n: f64,
j_cross: f64,
i_0: f64,
sigma: f64,
dt: f64,
seed: u64,
) -> Result<Self, String>
pub fn with_parameters( s1: f64, s2: f64, noise1: f64, noise2: f64, tau_s: f64, tau_ampa: f64, gamma: f64, j_n: f64, j_cross: f64, i_0: f64, sigma: f64, dt: f64, seed: u64, ) -> Result<Self, String>
Construct one configured state while retaining the supplied RNG seed.
fn validate(&self) -> Result<(), String>
fn phi(i_syn: f64) -> Result<f64, String>
Sourcepub fn step_with_gaussian_samples(
&mut self,
stim1: f64,
stim2: f64,
xi1: f64,
xi2: f64,
) -> Result<(f64, f64), String>
pub fn step_with_gaussian_samples( &mut self, stim1: f64, stim2: f64, xi1: f64, xi2: f64, ) -> Result<(f64, f64), String>
Advance one Euler/OU update from externally supplied normal samples.
Sourcepub fn step(&mut self, stim1: f64, stim2: f64) -> Result<(f64, f64), String>
pub fn step(&mut self, stim1: f64, stim2: f64) -> Result<(f64, f64), String>
Advance one stochastic update using the internal seeded RNG.
fn randn(&mut self) -> f64
Trait Implementations§
Source§impl Clone for WongWangUnit
impl Clone for WongWangUnit
Source§fn clone(&self) -> WongWangUnit
fn clone(&self) -> WongWangUnit
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 moreAuto Trait Implementations§
impl Freeze for WongWangUnit
impl RefUnwindSafe for WongWangUnit
impl Send for WongWangUnit
impl Sync for WongWangUnit
impl Unpin for WongWangUnit
impl UnsafeUnpin for WongWangUnit
impl UnwindSafe for WongWangUnit
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.