BALL (Biochemical Algorithms Library) is a C++ class framework and set of algorithms and data structures for molecular modelling and computational structural bioinformatics, a Python interface to this library, and a graphical user interface to BALL, the molecule viewer BALLView.
For both, BALLView offers three-dimensional and stereoscopic visualizing in several different modes, and applying directly the algorithms of the BALL library via its graphical user interface.
BALL supports molecular file formats including PDB, MOL2, MOL, HIN, XYZ, KCF, SD, AC, and secondary data sources like DCD, DSN6, GAMESS, JCAMP, SCWRL, and TRR.
Its selection mechanism enables to specify parts of a molecule by simple expressions (SMILES, SMARTS, element types).
Implementations of the popular force fields CHARMM, Amber, and MMFF94 can be combined with BALL's minimizer and simulation classes (steepest descent, conjugate gradient, L-BFGS, and shifted L-VMM).
At CeBIT 2009, BALLView was prominently presented as the first complete integration of real-time ray tracing technology into a molecular viewer and modeling tool.