Efficiently solving nonlinear equations underpins numerous scientific and engineering disciplines, yet scaling these solutions for complex system models remains a challenge. This paper presents NonlinearSolve.jl - a suite of high-performance open-source nonlinear equation solvers implemented natively in the Julia programming language. NonlinearSolve.jl distinguishes itself by offering a unified API that accommodates a diverse range of solver specifications alongside features such as automatic algorithm selection based on runtime analysis, support for GPU-accelerated computation through static array kernels, and the utilization of sparse automatic differentiation and Jacobian-free Krylov methods for large-scale problem-solving. Through rigorous comparison with established tools such as Sundials and MINPACK, NonlinearSolve.jl demonstrates unparalleled robustness and efficiency, achieving significant advancements in solving benchmark problems and challenging real-world applications. The capabilities of NonlinearSolve.jl unlock new potentials in modeling and simulation across various domains, making it a valuable addition to the computational toolkit of researchers and practitioners alike.
%0 Generic
%1 pal2024nonlinearsolvejl
%A Pal, Avik
%A Holtorf, Flemming
%A Larsson, Axel
%A Loman, Torkel
%A Utkarsh,
%A Schaefer, Frank
%A Qu, Qingyu
%A Edelman, Alan
%A Rackauckas, Chris
%D 2024
%K 65-04-numerical-analysis-software-source-code 65h10-systems-of-nonlinear-algebraic-equations
%T NonlinearSolve.jl: High-Performance and Robust Solvers for Systems of Nonlinear Equations in Julia
%U https://arxiv.org/abs/2403.16341
%X Efficiently solving nonlinear equations underpins numerous scientific and engineering disciplines, yet scaling these solutions for complex system models remains a challenge. This paper presents NonlinearSolve.jl - a suite of high-performance open-source nonlinear equation solvers implemented natively in the Julia programming language. NonlinearSolve.jl distinguishes itself by offering a unified API that accommodates a diverse range of solver specifications alongside features such as automatic algorithm selection based on runtime analysis, support for GPU-accelerated computation through static array kernels, and the utilization of sparse automatic differentiation and Jacobian-free Krylov methods for large-scale problem-solving. Through rigorous comparison with established tools such as Sundials and MINPACK, NonlinearSolve.jl demonstrates unparalleled robustness and efficiency, achieving significant advancements in solving benchmark problems and challenging real-world applications. The capabilities of NonlinearSolve.jl unlock new potentials in modeling and simulation across various domains, making it a valuable addition to the computational toolkit of researchers and practitioners alike.
@misc{pal2024nonlinearsolvejl,
abstract = {Efficiently solving nonlinear equations underpins numerous scientific and engineering disciplines, yet scaling these solutions for complex system models remains a challenge. This paper presents NonlinearSolve.jl - a suite of high-performance open-source nonlinear equation solvers implemented natively in the Julia programming language. NonlinearSolve.jl distinguishes itself by offering a unified API that accommodates a diverse range of solver specifications alongside features such as automatic algorithm selection based on runtime analysis, support for GPU-accelerated computation through static array kernels, and the utilization of sparse automatic differentiation and Jacobian-free Krylov methods for large-scale problem-solving. Through rigorous comparison with established tools such as Sundials and MINPACK, NonlinearSolve.jl demonstrates unparalleled robustness and efficiency, achieving significant advancements in solving benchmark problems and challenging real-world applications. The capabilities of NonlinearSolve.jl unlock new potentials in modeling and simulation across various domains, making it a valuable addition to the computational toolkit of researchers and practitioners alike.},
added-at = {2024-03-27T00:06:48.000+0100},
archiveprefix = {arXiv},
author = {Pal, Avik and Holtorf, Flemming and Larsson, Axel and Loman, Torkel and Utkarsh and Schaefer, Frank and Qu, Qingyu and Edelman, Alan and Rackauckas, Chris},
biburl = {https://www.bibsonomy.org/bibtex/2ab277d1bf5a48ba49abddcd816b6092c/gdmcbain},
eprint = {2403.16341},
interhash = {e1422490665e83e9f2a4029b9ecd8a6e},
intrahash = {ab277d1bf5a48ba49abddcd816b6092c},
keywords = {65-04-numerical-analysis-software-source-code 65h10-systems-of-nonlinear-algebraic-equations},
primaryclass = {math.NA},
timestamp = {2024-03-27T00:06:48.000+0100},
title = {NonlinearSolve.jl: High-Performance and Robust Solvers for Systems of Nonlinear Equations in Julia},
url = {https://arxiv.org/abs/2403.16341},
year = 2024
}