O2scl is a C++ library for object-oriented numerical programming. It includes interpolation, differentiation, integration, roots of polynomials, equation solving, minimization, constrained minimization, Monte Carlo integration, simulated annealing, least-squares fitting, solution of ordinary differential equations, two-dimensional interpolation, Chebyshev approximation, unit conversions, and file I/O with HDF5.

This is a beta version. The library should install and test successfully, and most of the classes are ready for production use. Some of the interfaces may change slightly in future versions. There are a few classes which are more experimental, and this is clearly stated at the top of the documentation for these classes.

- Installation
- General Usage
- Compiling Examples
- Arrays, Vectors, Matrices and Tensors
- Linear Algebra
- Interpolation
- Physical Constants
- Function Objects
- Data Tables
- String Manipulation
- Differentiation
- Integration
- Monte Carlo Integration
- Probability Distributions and Markov Chain Monte Carlo
- Roots of Polynomials
- Equation Solving
- Minimization
- Constrained Minimization
- Simulated Annealing
- Histograms
- Least-Squares Fitting
- Ordinary Differential Equations
- Random Number Generation
- Higher-dimensional Interpolation
- Algebraic Function Evaluation
- Chebyshev Approximation
- Unit Conversions
- File I/O with HDF5
- The 'acol' Command-line Utility
- Parallel programming with O2scl
- Other Classes and Functions
- Library Settings
- Development Team
- Design Considerations
- License Information
- Related Projects
- Acknowledgements
- Bibliography
**Todo List**- Developer Guidelines
- Ideas for Future Development
- Download O2scl

Documentation generated with Doxygen. Provided under the
GNU Free Documentation License (see License Information).