Skip to content
daniel brake edited this page Sep 8, 2015 · 20 revisions

Introduction

Bertini is software for numerical algebraic geometry, i.e., software for computing and using numerical approximations of solutions of polynomial systems. b2 (Bertini 2.x) is our nickname for the redevelopment of classic Bertini (1.x).

#Purpose for redevelopment

Bertini developed started around 2002, with the initial beta release in 2006. As with virtually all code, Bertini outgrew its original scope and development plan. Maintenance and extension have become increasingly difficult.

The NSF has kindly chosen to support this redevelopment through awards to University of Notre Dame and Colorado State University. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.

Get involved

A few central developers are currently working on core development, along with code reviewers and testers. If you are interested in contributing to this project, please contact a member of the core development team - Dan Bates, Dan Brake, Jon Hauenstein, Andrew Sommese or Charles Wampler.

Plan of action

September 2015

A significant portion of the computational core has been implemented. We can represent arbitrary polynomial, analytic, and non-analytic functions and systems in memory, and differentiate them. We can also construct the TotalDegree start system for any polynomial system which has a single affine or homogeneous variable group.

We are close to resolving a large pull request which will bring this code into the base, and another large request will follow, bringing tracking basics such as the Euler ODE predictor, Newton's method, and basic stepping and tracking routines. Full-blown path tracking is not very far away. Once we get these basic routines well tested, we will add other ODE predictors, endgame methods, and post-processing features.

Longer term, we need to implement multi-homogeneous start systems, regeneration, and the Numerical Irreducible Decomposition. The project is coming along nicely, and we are proud of the software as it stands today, and even happier about the future of Numerical Algebraic Geometry.

November 2014

We are currently working on laying down infrastructure for b2 development: development of resources (developer guidelines, choice of tools, etc.), high-level planning (via plantUML, etc.), and extreme low-level planning (representation of numbers, representation of polynomials, vector & matrix classes etc.). The plan is to build the most central classes and create a large skeleton, then invite developers to add flesh.