1. Introduction and Goals

bice (Bifurcation Continuation Engine) is a Python package for numerical path continuation and bifurcation analysis.

1.1 Requirements Overview

  • Support for numerical continuation of solutions to nonlinear algebraic equations.

  • Extensibility for different types of discretizations (e.g., Finite Differences, Pseudospectral).

  • Integration with standard scientific Python libraries (NumPy, SciPy).

1.2 Quality Goals

  • Correctness: Numerical results must be accurate.

  • Ease of Use: Simple API for users coming from scientific backgrounds.

  • Maintainability: Clear separation between core logic, solvers, and discretizations.

1.3 Stakeholders

  • Scientific researchers in physics, biology, and chemistry.

  • Students in computational science.