pub struct BranchSwitching {
pub epsilon: f64,
pub max_iter: usize,
pub tol: f64,
}Expand description
Bordered-system branch switching at a bifurcation point.
Solves the bordered system [J, v; w^T, 0] [du; dσ] = [-F; 0] where v
and w are the (approximate) null vectors of J to switch branches.
Returns the perturbed state on the new branch.
Fields§
§epsilon: f64Perturbation magnitude ε applied in the null-space direction.
max_iter: usizeMaximum Newton iterations for the corrector after switching.
tol: f64Newton tolerance.
Implementations§
Source§impl BranchSwitching
impl BranchSwitching
Sourcepub fn new(epsilon: f64, max_iter: usize, tol: f64) -> Self
pub fn new(epsilon: f64, max_iter: usize, tol: f64) -> Self
Create a new BranchSwitching with given parameters.
Sourcepub fn switch(
&self,
state: &ContinuationState,
jac: &dyn Fn(&[f64], f64) -> Vec<Vec<f64>>,
) -> ContinuationState
pub fn switch( &self, state: &ContinuationState, jac: &dyn Fn(&[f64], f64) -> Vec<Vec<f64>>, ) -> ContinuationState
Switch branch at state using the bordered system approach.
Returns the new continuation state on the secondary branch.
Auto Trait Implementations§
impl Freeze for BranchSwitching
impl RefUnwindSafe for BranchSwitching
impl Send for BranchSwitching
impl Sync for BranchSwitching
impl Unpin for BranchSwitching
impl UnsafeUnpin for BranchSwitching
impl UnwindSafe for BranchSwitching
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<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§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 moreSource§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).Source§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.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.