Bertini Software

Back to the Parent Page

Bertini Resources

General Description

Bertini is a general-purpose solver, written in C, that was created for research about polynomial continuation.

Key Features:

  • Finds isolated solutions using total-degree start systems, multihomogeneous-degree start systems, and also user defined homotopies.
  • Implements parameter continuation for families of systems, such as the inverse kinematics of six-revolute serial-link arms, or the forward kinematics of Stewart-Gough parallel-link robots.
  • Adaptive multiprecision implemented for finding isolated solutions and for the numerical irreducible decomposition.
  • Treats positive-dimensional solutions by computing witness sets.
  • Has automatic differentiation which preserves the straightline quality of an input system.
  • Uses homogenization to accurately compute solutions "at infinity."
  • Provides a fractional power-series endgame to accurately compute singular roots
  • Allows for subfunctions.
  • Allows for witness set manipulation via both sampling and membership testing.
  • Accepts square or nonsquare systems.

Basic Usage

module load bertini

bertini ~/path/to/FILE_NAME

If no file is specified, Bertini will use the file named input in the current working directory.

Useful Options

Submitting Multicore Jobs with Bertini

The parallel versions of Bertini were written using MPI. To submit multicore Bertini jobs, use the following template:


#$ -M	      # Email address for job notification
#$ -m abe		      # Send mail when job begins, ends and aborts
#$ -pe mpi-24 24      # Specify parallel environment and legal core size
#$ -q long		      # Specify queue
#$ -N job_name	              # Specify job name

module load bertini	      # Required modules

mpirun -np $NSLOTS bertini INPUT_FILE_NAME      # Application to execute

Further Information

See the official website: Bertini