.. Description of optimize module
.. _optimize-page:

******************
Optimization Tools
******************

==================
Linesearch Methods
==================

The :mod:`linesearch` Module
============================

.. _linesearch-section:

.. automodule:: linesearch

.. autoclass:: LineSearch
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

.. autoclass:: ArmijoLineSearch
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:


The :mod:`pyswolfe` Module
==========================

.. _pyswolfe-section:

.. automodule:: pyswolfe

.. autoclass:: StrongWolfeLineSearch
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:


The :mod:`pymswolfe` Module
===========================

.. _pymswolfe-section:

.. automodule:: pymswolfe

.. autoclass:: StrongWolfeLineSearch
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:


====================
Trust-Region Methods
====================

The :mod:`trustregion` Module
=============================

.. _trustregion-section:

.. automodule:: trustregion

.. autoclass:: TrustRegionFramework
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

.. autoclass:: TrustRegionSolver
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

.. autoclass:: TrustRegionCG
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

.. autoclass:: TrustRegionPCG
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

.. autoclass:: TrustRegionGLTR
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:


================
Complete Solvers
================

.. _solvers-section:

Linear Least-Squares Problems
=============================

.. automodule:: lsqr

.. autoclass:: LSQRFramework
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

Linear Programming
==================

.. automodule:: lp

.. autoclass:: RegLPInteriorPointSolver
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

.. autoclass:: RegLPInteriorPointSolver29
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

Convex Quadratic Programming
============================

.. automodule:: cqp

.. autoclass:: RegQPInteriorPointSolver
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

.. autoclass:: RegQPInteriorPointSolver29
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

Unconstrained Programming
=========================

.. automodule:: trunk

.. autoclass:: TrunkFramework
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

.. autoclass:: TrunkLbfgsFramework
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

.. automodule:: lbfgs

.. autoclass:: InverseLBFGS
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

.. autoclass:: LBFGSFramework
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:


Bound-Constrained Programming
=============================

.. automodule:: pdmerit

.. autoclass:: PrimalDualInteriorPointFramework
   :show-inheritance:
   :members:
   :inherited-members:
   :undoc-members:

General Nonlinear Programming
=============================

.. todo::

   Insert this module.