.. Ceres Solver documentation master file, created by
   sphinx-quickstart on Sat Jan 19 00:07:33 2013.
   You can adapt this file completely to your liking, but it should at least
   contain the root `toctree` directive.

============
Ceres Solver
============

Ceres Solver is a portable C++ library for solving non-linear least
squares problems.

* Download the latest stable `release
  <https://ceres-solver.googlecode.com/files/ceres-solver-1.6.0.tar.gz>`_
  or clone the `repository
  <https://ceres-solver.googlesource.com/ceres-solver>`_

* Read the :ref:`chapter-tutorial`

* Browse the :ref:`chapter-modeling` and :ref:`chapter-solving`

* Join the `mailing list
  <https://groups.google.com/forum/?fromgroups#!forum/ceres-solver>`_
  and ask questions.

* File bugs, feature requests in the `issue tracker
  <https://code.google.com/p/ceres-solver/issues/list>`_.


.. toctree::
   :maxdepth: 1
   :hidden:

   introduction
   building
   tutorial
   modeling
   solving
   reading
   contributing
   acknowledgements
   version_history
   bibliography
   license
   citation
