#solver #non-linear #continuation #numerical #equation

russell_nonlin

Numerical continuation methods to solve nonlinear systems of equations

1 unstable release

new 0.1.0 Apr 13, 2025

#1589 in Math

Download history 70/week @ 2025-04-07

71 downloads per month

MIT license

2MB
37K SLoC

Russell Nonlin - Numerical Continuation methods to solve nonlinear systems of equations

documentation

This crate is part of Russell - Rust Scientific Library

Contents

Introduction

🚧🚧🚧 WORK IN PROGRESS 🚧🚧🚧

This library implements solvers for nonlinear systems of equations using Numerical Continuation, in particular, Predictor-Corrector algorithms based on the Euler-Newton(-Raphson) method (See References #1 and #2).

Documentation

References

  1. Doedel EJ (2007) Lecture Notes on Numerical Analysis of Nonlinear Equations. Numerical Continuation Methods for Dynamical Systems: Path following and boundary value problems. Ed. by B Krauskopf, HM Osinga, J GalΓ‘n-Vioque. Dordrecht: Springer Netherlands, pp. 1–49. doi: 10.1007/978-1-4020-6356-5 1
  2. Allgower EL, Georg K (2003) Introduction to Numerical Continuation Methods. Society for Industrial and Applied Mathematics. doi: 10.1137/ 1.9780898719154

Installation

This crate depends on some non-rust high-performance libraries. See the main README file for the steps to install these dependencies.

Setting Cargo.toml

Crates.io

πŸ‘† Check the crate version and update your Cargo.toml accordingly:

[dependencies]
russell_nonlin = "*"

Optional features

The following (Rust) features are available:

  • intel_mkl: Use Intel MKL instead of OpenBLAS
  • local_suitesparse: Use a locally compiled version of SuiteSparse
  • with_mumps: Enable the MUMPS solver (locally compiled)

Note that the main README file presents the steps to compile the required libraries according to each feature.

🌟 Examples

This section illustrates how to use russell_nonlin. See also:

Simple example

TODO

Dependencies

~4–5MB
~97K SLoC