numopt-js
    Preparing search index...

    Interface GaussNewtonOptions

    Options for Gauss-Newton method.

    interface GaussNewtonOptions {
        jacobian?: JacobianFn;
        jacobianStep?: number;
        logLevel?: "DEBUG" | "INFO" | "WARN" | "ERROR";
        maxIterations?: number;
        onIteration?: (
            iteration: number,
            cost: number,
            parameters: Float64Array,
        ) => void;
        tolerance?: number;
        useNumericJacobian?: boolean;
        verbose?: boolean;
    }

    Hierarchy (View Summary)

    Index

    Properties

    jacobian?: JacobianFn

    Analytical Jacobian function. If provided, this will be used instead of numerical differentiation. If not provided, numerical Jacobian will be used (if useNumericJacobian is true).

    jacobianStep?: number

    Step size for numerical Jacobian computation. Default: 1e-6

    logLevel?: "DEBUG" | "INFO" | "WARN" | "ERROR"

    Log level for detailed logging output. Controls which log messages are displayed:

    • DEBUG: Detailed progress information (cost, gradient norm, step size, etc.)
    • INFO: Convergence messages and important state changes
    • WARN: Warnings (singular matrix, max iterations reached, line search failure, etc.)
    • ERROR: Fatal errors (currently not used, reserved for future extensions)

    If verbose is true and logLevel is not specified, logLevel defaults to INFO. If both logLevel and verbose are specified, logLevel takes precedence. Default: undefined (no logging)

    maxIterations?: number

    Maximum number of iterations before stopping. Default: 1000

    onIteration?: (
        iteration: number,
        cost: number,
        parameters: Float64Array,
    ) => void

    Callback function called at each iteration for progress monitoring. Useful for debugging and monitoring convergence.

    tolerance?: number

    Tolerance for convergence check (gradient norm, step size, etc.). Default: 1e-6

    useNumericJacobian?: boolean

    Use numerical differentiation to compute Jacobian if user doesn't provide it. Default: true

    verbose?: boolean

    Enable verbose logging for debugging. When true, detailed information is logged to console. Default: false

    Use logLevel instead for more fine-grained control. If both logLevel and verbose are specified, logLevel takes precedence.