conspire::math::optimize

Trait SecondOrder

Source
pub trait SecondOrder<H: Hessian, J, X: Tensor>
where J: Div<H, Output = X> + Tensor,
{ // Required method fn minimize( &self, jacobian: impl Fn(&X) -> Result<J, OptimizeError>, hessian: impl Fn(&X) -> Result<H, OptimizeError>, initial_guess: X, dirichlet: Option<Dirichlet<'_>>, neumann: Option<Neumann<'_>>, ) -> Result<X, OptimizeError>; }
Expand description

Second-order optimization algorithms.

Required Methods§

Source

fn minimize( &self, jacobian: impl Fn(&X) -> Result<J, OptimizeError>, hessian: impl Fn(&X) -> Result<H, OptimizeError>, initial_guess: X, dirichlet: Option<Dirichlet<'_>>, neumann: Option<Neumann<'_>>, ) -> Result<X, OptimizeError>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<H: Hessian, J, X: Tensor> SecondOrder<H, J, X> for NewtonRaphson
where J: Div<H, Output = X> + Tensor,