NonlinearSystem

Trait NonlinearSystem 

Source
pub trait NonlinearSystem {
    type Real: Float;
    type Layout: RowMap;

    // Required methods
    fn layout(&self) -> &Self::Layout;
    fn jacobian(&self) -> &dyn JacobianCache<Self::Real>;
    fn jacobian_mut(&mut self) -> &mut dyn JacobianCache<Self::Real>;
    fn residual(&self, x: &[Self::Real], out: &mut [Self::Real]);
    fn refresh_jacobian(&mut self, x: &[Self::Real]);

    // Provided method
    fn jacobian_dense(&mut self, x: &[Self::Real], jac: &mut Mat<Self::Real>) { ... }
}

Required Associated Types§

Required Methods§

Source

fn layout(&self) -> &Self::Layout

Source

fn jacobian(&self) -> &dyn JacobianCache<Self::Real>

Source

fn jacobian_mut(&mut self) -> &mut dyn JacobianCache<Self::Real>

Source

fn residual(&self, x: &[Self::Real], out: &mut [Self::Real])

Source

fn refresh_jacobian(&mut self, x: &[Self::Real])

Provided Methods§

Source

fn jacobian_dense(&mut self, x: &[Self::Real], jac: &mut Mat<Self::Real>)

Implementors§