pub struct AmariNeuralField {
pub u: Vec<f64>,
pub n: usize,
pub tau: f64,
pub a_exc: f64,
pub a_width: f64,
pub b_inh: f64,
pub b_width: f64,
pub dx: f64,
pub dt: f64,
w: Vec<f64>,
}Expand description
Finite periodic Amari field with source-level Heaviside activity.
Fields§
§u: Vec<f64>Field potential at each periodic site.
n: usizeNumber of sites.
tau: f64Positive field time constant.
a_exc: f64Local excitation amplitude.
a_width: f64Excitation inverse width.
b_inh: f64Distal inhibition amplitude.
b_width: f64Inhibition inverse width.
dx: f64Spatial grid interval.
dt: f64Explicit-Euler interval.
w: Vec<f64>Implementations§
Source§impl AmariNeuralField
impl AmariNeuralField
Sourcepub fn new(n: usize) -> Self
pub fn new(n: usize) -> Self
Construct the source-faithful default field with n periodic sites.
§Panics
Panics when fewer than two sites are requested. Use
Self::with_config for a recoverable configuration path.
Sourcepub fn with_config(
n: usize,
tau: f64,
a_exc: f64,
a_width: f64,
b_inh: f64,
b_width: f64,
dx: f64,
dt: f64,
u: Vec<f64>,
) -> Result<Self, String>
pub fn with_config( n: usize, tau: f64, a_exc: f64, a_width: f64, b_inh: f64, b_width: f64, dx: f64, dt: f64, u: Vec<f64>, ) -> Result<Self, String>
Construct a fully configured field, validating state and kernel shape.
Trait Implementations§
Source§impl Clone for AmariNeuralField
impl Clone for AmariNeuralField
Auto Trait Implementations§
impl Freeze for AmariNeuralField
impl RefUnwindSafe for AmariNeuralField
impl Send for AmariNeuralField
impl Sync for AmariNeuralField
impl Unpin for AmariNeuralField
impl UnsafeUnpin for AmariNeuralField
impl UnwindSafe for AmariNeuralField
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.