What Are the Special Capabilities of NonlinearSolve.jl?

Written by linearization | Published 2025/03/26
Tech Story Tags: nonlinearsolve.jl | robust-nonlinear-solvers | julia-programming-language | gpu-accelerated-computation | sparse-matrix-computations | jacobian-free-krylov-methods | scientific-machine-learning | benchmarking-nonlinear-solvers

TLDRHere, we will focus on specific capabilities of our package NonlinearSolve.jl. Let’s cover the typical workflow of using NonlinearSolve.jl.via the TL;DR App

Table of Links

Abstract and 1. Introduction

2. Mathematical Description and 2.1. Numerical Algorithms for Nonlinear Equations

2.2. Globalization Strategies

2.3. Sensitivity Analysis

2.4. Matrix Coloring & Sparse Automatic Differentiation

3. Special Capabilities

3.1. Composable Building Blocks

3.2. Smart PolyAlgortihm Defaults

3.3. Non-Allocating Static Algorithms inside GPU Kernels

3.4. Automatic Sparsity Exploitation

3.5. Generalized Jacobian-Free Nonlinear Solvers using Krylov Methods

4. Results and 4.1. Robustness on 23 Test Problems

4.2. Initializing the Doyle-Fuller-Newman (DFN) Battery Model

4.3. Large Ill-Conditioned Nonlinear Brusselator System

5. Conclusion and References

3. Special Capabilities

In the previous section, we provided an overview of solving nonlinear equations. Here, we will focus on specific capabilities of our package NonlinearSolve.jl. Let’s cover the typical workflow of using NonlinearSolve.jl. First, we define the nonlinear equations. We will use a mutating function to compute our residual value from 𝑢 and 𝑝 and store it in F.

In Julia, mutating function names are appended with a . ! as a convention. Next, we construct a NonlinearFunction – a wrapper over f! that can store additional information like user-defined Jacobian functions and sparsity patterns.

This paper is available on arxiv under CC BY 4.0 DEED license.

Authors:

(1) AVIK PAL, CSAIL MIT, Cambridge, MA;

(2) FLEMMING HOLTORF;

(3) AXEL LARSSON;

(4) TORKEL LOMAN;

(5) UTKARSH;

(6) FRANK SCHÄFER;

(7) QINGYU QU;

(8) ALAN EDELMAN;

(9) CHRIS RACKAUCKAS, CSAIL MIT, Cambridge, MA.


Written by linearization | We publish those who illuminate the path and make the intricate intuitive.
Published by HackerNoon on 2025/03/26