Function sparse_hessian

Source
pub fn sparse_hessian<F, G>(
    func: F,
    grad: Option<G>,
    x: &ArrayView1<'_, f64>,
    f0: Option<f64>,
    g0: Option<&Array1<f64>>,
    sparsity_pattern: Option<&CsrArray<f64>>,
    options: Option<SparseFiniteDiffOptions>,
) -> Result<CsrArray<f64>, OptimizeError>
where F: Fn(&ArrayView1<'_, f64>) -> f64 + Sync, G: Fn(&ArrayView1<'_, f64>) -> Array1<f64> + Sync + 'static,
Expand description

Computes a sparse Hessian matrix using finite differences

§Arguments

  • func - Function to differentiate, takes ArrayView1 and returns f64
  • grad - Optional gradient function, takes ArrayView1 and returns Array1
  • x - Point at which to compute the Hessian
  • f0 - Function value at x (if None, computed internally)
  • g0 - Gradient value at x (if None, computed internally)
  • sparsity_pattern - Sparse matrix indicating the known sparsity pattern (if None, dense Hessian)
  • options - Options for finite differences computation

§Returns

  • CsrArray<f64> - Sparse Hessian matrix in CSR format