pub struct KuramotoSystem {
pub order: KuramotoOrder,
pub coupling_coeffs: DMatrix<f32>,
pub damping_coeffs: DVector<f32>,
pub forcing_params: DVector<f32>,
}Expand description
Kuramoto system of ODEs.
The state variables of the system are the phase angles ϕ_i and, in the
second-order case, also the angular frequencies ω_i. The notation here
follows Nitzbon et al 2017.
Fields§
§order: KuramotoOrderDifferential order of the system.
coupling_coeffs: DMatrix<f32>Coupling coefficients K_{i,j} between the oscillators (nonnegative).
damping_coeffs: DVector<f32>Damping coefficients α_i (nonnegative).
forcing_params: DVector<f32>Forcing parameter P_i (arbitrary sign).
In the first-order case, these constant offsets are the inherent frequencies of the oscillators, but in the second-order case, their relationship to the inherent frequencies is more complicated; see Nishikawa & Motter 2015.
Implementations§
Source§impl KuramotoSystem
impl KuramotoSystem
Sourcepub fn fully_connected_homogeneous(
order: KuramotoOrder,
forcing_params: DVector<f32>,
) -> Self
pub fn fully_connected_homogeneous( order: KuramotoOrder, forcing_params: DVector<f32>, ) -> Self
Constructs a homogeneous Kuramoto system on the complete graph.
Trait Implementations§
Source§impl Clone for KuramotoSystem
impl Clone for KuramotoSystem
Source§fn clone(&self) -> KuramotoSystem
fn clone(&self) -> KuramotoSystem
Returns a duplicate of the value. Read more
1.0.0 · 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 KuramotoSystem
impl Debug for KuramotoSystem
Source§impl ODESystem for KuramotoSystem
impl ODESystem for KuramotoSystem
Source§impl PartialEq for KuramotoSystem
impl PartialEq for KuramotoSystem
impl StructuralPartialEq for KuramotoSystem
Auto Trait Implementations§
impl Freeze for KuramotoSystem
impl RefUnwindSafe for KuramotoSystem
impl Send for KuramotoSystem
impl Sync for KuramotoSystem
impl Unpin for KuramotoSystem
impl UnwindSafe for KuramotoSystem
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<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.