home
Home
Modeling Languages
    ModelingToolkitCatalystNBodySimulatorParameterizedFunctionsProcessSimulatorMomentClosure
Model Libraries and Importers
    ModelingToolkitStandardLibraryModelingToolkitNeuralNetsDiffEqCallbacksFiniteStateProjectionCellMLToolkitSBMLToolkitBaseModelicaAudioPluginsReactionNetworkImportersDiffEqPhysicsDiffEqFinancialPubChemPyomoMathML
Symbolic Tools
    ModelOrderReductionSymbolicsSymbolicUtilsSymbolicIntegrationSymbolicSMTSymbolicLimitsSymbolicAnalysisFunctionProperties
Array Libraries
    RecursiveArrayToolsComponentArraysLabelledArraysMultiScaleArrays
Equation Solvers
    LinearSolveNonlinearSolveDifferentialEquationsIntegralsDifferenceEquationsOptimizationJumpProcessesLineSearchEvolutionaryNeuralLinearSolveCorleone
Inverse Problems / Estimation
    CurveFitSciMLSensitivityDiffEqParamEstimDiffEqBayes
PDE Solvers
    MethodOfLinesNeuralPDENeuralOperatorsFEniCSHighDimPDEDiffEqOperatorsFiniteVolumeMethodFiniteVolumeMethod1DPDEBase
Advanced Solver APIs
    OrdinaryDiffEqBoundaryValueDiffEqDiffEqGPUSteadyStateDiffEqOrdinaryDiffEqOperatorSplittingIRKGaussLegendreMATLABDiffEqPETScDiffEqQuantumNLDiffEq
Parameter Analysis
    EasyModelAnalysisGlobalSensitivityStructuralIdentifiabilityMinimallyDisruptiveCurvesCatalystNetworkAnalysis
Third-Party Parameter Analysis
    BifurcationKit
Uncertainty Quantification
    PolyChaosSciMLExpectationsOptimalUncertaintyQuantification
Function Approximation
    SurrogatesReservoirComputing
Implicit Layer Deep Learning
    DiffEqFluxDeepEquilibriumNetworksNeuralLyapunov
Symbolic Learning
    DataDrivenDiffEqSymbolicNumericIntegration
Third-Party Differentiation Tooling
    SparseDiffToolsFiniteDiff
Numerical Utilities
    ExponentialUtilitiesDiffEqNoiseProcessPreallocationToolsEllipsisNotationDataInterpolationsDataInterpolationsNDPoissonRandomQuasiMonteCarloRuntimeGeneratedFunctionsMuladdMacroFindFirstFunctionsSparseDiffToolsBipartiteGraphsFastAlmostBandedMatricesFastBroadcastFunctionWrappersWrappersLHLFactorizationLightweightStatsPureGebalPureKLUPureUMFPACKRootedTreesSparseBandedMatricesRespecializeParamsConcreteStructs
High-Level Interfaces
    SciMLBaseSciMLStructuresSciMLLoggingADTypesSymbolicIndexingInterfaceTermInterfaceSciMLOperatorsSurrogatesBaseCommonSolveSciMLIteratorsStatic
Third-Party Interfaces
    ArrayInterfaceStaticArrayInterface
Developer Documentation
    SciMLStyleColPracDiffEq Developer DocumentationOrgMaintenanceScripts
Extra Resources
    SciMLWorkshopExtended SciML TutorialsThe SciML BenchmarksModelingToolkitCourse
Dyad by JuliaHub
    DyadBY JULIAHUB

    Dyad by JuliaHub is the agentic modeling and simulation platform built on the SciML stack.

    • Component-based GUI for modeling
    • Modeling language and compiler stack integrated with and transparent to AI agents
    Explore Dyad ↗

    JuliaHub offers commercial support for ModelingToolkit and the SciML ecosystem. Contact Us.

Products built with SciML
    • Dyad
    • Pumas
    • Cedar EDA
    • Neuroblox
    • Planting Space
    /
    NonlinearSolve.jl logo
    NonlinearSolve.jl
    • NonlinearSolve.jl: High-Performance Unified Nonlinear Solvers
    • Getting Started with Nonlinear Rootfinding in Julia
    • Tutorials
      • Solving Nonlinear Problems with Bound Constraints
      • Nonlinear Preconditioning and Iterate Limiting (PCNR)
      • Code Optimization for Small Nonlinear Systems in Julia
      • Efficiently Solving Large Sparse Ill-Conditioned Nonlinear Systems in Julia
      • Symbolic Nonlinear System Definition and Acceleration via ModelingToolkit
      • Faster Startup and and Static Compilation
      • Nonlinear Solver Iterator Interface
      • Optimizing a Parameterized ODE
      • Accelerated Rootfinding on GPUs
      • PETSc SNES Example 2
    • Basics
      • Nonlinear Problems
      • Nonlinear Functions and Jacobian Types
      • Common Solver Options (Solve Keyword Arguments)
      • Nonlinear Solutions
      • Automatic Differentiation Backends
      • Termination Conditions
      • Diagnostics API
      • (Semi-)Automatic Sparsity Detection
      • Frequently Asked Questions
      • Controlling Solver Verbosity
    • Solver Summaries and Recommendations
      • Nonlinear System Solvers
      • Interval Root-Finding Methods (Bracketing Solvers)
      • Steady State Solvers
      • Nonlinear Least Squares Solvers
      • Bounded Solvers
      • Fixed Point Solvers
    • Native Functionalities
      • NonlinearSolve.jl Solvers
      • SimpleNonlinearSolve.jl
      • BracketingNonlinearSolve.jl
      • SteadyStateDiffEq.jl
      • Descent Subroutines
      • Globalization Subroutines
      • Diagnostics API
    • Wrapped Solver APIs
      • FastLevenbergMarquardt.jl
      • FixedPointAcceleration.jl
      • LeastSquaresOptim.jl
      • MINPACK.jl
      • NLsolve.jl
      • NLSolvers.jl
      • PETSc.jl
      • SciPy
      • SIAMFANLEquations.jl
      • SpeedMapping.jl
      • Sundials.jl
      • HomotopyContinuation.jl
    • Sub-Packages
      • SciMLJacobianOperators.jl
    • Development Documentation
      • Internal Abstract Types
      • Termination Cache API
      • Linear Solve
      • Jacobian Wrappers
      • Custom SciML Operators
        • Low-Rank Jacobian Operators
      • Internal Algorithm Helpers
    • Release Notes
    • References
    Version
    • Development Documentation
    • Custom SciML Operators
    • Custom SciML Operators
    GitHub

    Custom SciML Operators

    Low-Rank Jacobian Operators

    NonlinearSolveQuasiNewton.BroydenLowRankJacobian — Type
    BroydenLowRankJacobian{T}(U, Vᵀ, idx, cache, alpha)

    Low Rank Approximation of the inverse Jacobian. Currently only used for LimitedMemoryBroyden. This computes the inverse Jacobian as $\alpha I + U \times V^T$, matching the $\alpha I$ seed IdentityInitialization hands the other quasi-Newton methods after inversion.

    source
    « Jacobian WrappersInternal Algorithm Helpers »

    Powered by Documenter.jl and the Julia Programming Language.

    Settings


    This document was generated with Documenter.jl version 1.19.0 on Monday 14 September 2026. Using Julia version 1.13.0.