Skip to main content

LargeBlockSolver

Trait LargeBlockSolver 

Source
pub trait LargeBlockSolver {
    // Required method
    fn solve_large(
        &mut self,
        x0: &[Number],
        eqs: &mut dyn BlockEquations,
        options: &BlockSolveOptions,
    ) -> Result<BlockSolveOutcome, BlockSolveError>;
}
Expand description

Solver for blocks exceeding auxiliary_max_block_dim. The orchestrator falls through to this when the lightweight Newton rejects a block as too large.

PR 11 ships RelaxedNewtonSolver as the default impl — same algorithm as DampedNewtonSolver but with a higher dimension cap and more iterations. The architectural seam is what matters: a future pounce-algorithm-side impl can drop in here without touching the orchestrator.

Required Methods§

Source

fn solve_large( &mut self, x0: &[Number], eqs: &mut dyn BlockEquations, options: &BlockSolveOptions, ) -> Result<BlockSolveOutcome, BlockSolveError>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§