paint-brush
What is the Large Ill-Conditioned Nonlinear Brusselator System?by@linearization
New Story

What is the Large Ill-Conditioned Nonlinear Brusselator System?

by Linearization TechnologyMarch 29th, 2025
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

Solving ill-conditioned nonlinear systems requires specializing the linear solver on properties of the Jacobian to cut down on the linear solve...

Coin Mentioned

Mention Thumbnail
featured image - What is the Large Ill-Conditioned Nonlinear Brusselator System?
Linearization Technology HackerNoon profile picture
0-item

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



Fig. 12: Work-Precision Diagram for Brusselator Steady State PDE: NewtonKrylov from NonlinearSolve.jl is faster than the other solvers. Sundials NewtonKrylov could not solve the problem at any tolerance and was dropped from the plot.


where



and the initial conditions are



with the periodic boundary condition



We analyze our solvers for this problem in 3 parts. Firstly, Figure 10 compares the scaling of NewtonRaphson and TrustRegion between frameworks. NonlinearSolve.jl leverages sparsity detection and colored sparse matrix algorithms to accelerate Jacobian construction and is consistently faster than all existing solvers here. None of the frameworks have built-in sparsity support and, unsurprisingly, don’t scale well. However, with increasing discretization, explicitly forming Jacobians eventually becomes infeasible. Figure 11 demonstrates NonlinearSolve.jl Jacobian-free Krylov Methods with Preconditioning that solve the linear system without constructing the Jacobian. We note that Sundials KINSOL with their built-in GMRES fails to converge to the solution, and MINPACK and NLsolve.jl don’t support Jacobian-Free methods.


Finally, in Figure 12, we present a Work-Precision Diagram for the discretized Brusselator on a 32 × 32 grid, showing that our methods are an order of magnitude faster than the ones in other software.


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.