implicit_derivative

Function implicit_derivative 

Source
pub fn implicit_derivative<G, D: DualNum<F>, F: DualNumFloat, A: DualStruct<Dual<D, F>, F>>(
    g: G,
    x: F,
    args: &A::Inner,
) -> D
where G: Fn(Dual<D, F>, &A) -> Dual<D, F>,
Expand description

Calculate the derivative of the unary implicit function g(x, args) = 0

let y = Dual2_64::from(25.0).derivative();
let x = implicit_derivative(|x,y| x.powi(2)-y, 5.0f64, &y);
assert_relative_eq!(x.re, y.sqrt().re, max_relative=1e-16);
assert_relative_eq!(x.v1, y.sqrt().v1, max_relative=1e-16);
assert_relative_eq!(x.v2, y.sqrt().v2, max_relative=1e-16);