Skip to main content

conjugate_gradient

Function conjugate_gradient 

Source
pub fn conjugate_gradient(
    a: &impl LinearOperator,
    b: &[f64],
    initial: Option<&[f64]>,
    preconditioner: &impl Preconditioner,
    options: CgOptions,
) -> Result<CgReport, SolverError>
Expand description

Preconditioned conjugate gradient for a fixed real symmetric POSITIVE-DEFINITE operator and positive-definite preconditioner. Caller guarantees those global properties; positive-curvature checks can detect some violations, not prove SPD. Zero RHS and an already-correct initial guess converge in zero iterations. Failure to reach tolerance returns MaxIterations, never a false success.