.. 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` API and :ref:`chapter-solving` API.

* 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>`_.

* If you use Ceres Solver for a publication, you must cite it as::

    @misc{ceres-solver,
      author = "Sameer Agarwal and Keir Mierle",
      title = "Ceres Solver",
      howpublished = "\url{https://code.google.com/p/ceres-solver/}",
    }

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

   introduction
   building
   tutorial
   modeling
   solving
   reading
   contributing
   acknowledgements
   version_history
   bibliography
   license
