.. _program_listing_file_include_eigenpy_solvers_ConjugateGradient.hpp: Program Listing for File ConjugateGradient.hpp ============================================== |exhale_lsh| :ref:`Return to documentation for file ` (``include/eigenpy/solvers/ConjugateGradient.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp /* * Copyright 2017 CNRS */ #ifndef __eigenpy_conjugate_gradient_hpp__ #define __eigenpy_conjugate_gradient_hpp__ #include #include "eigenpy/fwd.hpp" #include "eigenpy/solvers/IterativeSolverBase.hpp" namespace eigenpy { template struct ConjugateGradientVisitor : public boost::python::def_visitor< ConjugateGradientVisitor > { typedef typename ConjugateGradient::MatrixType MatrixType; template void visit(PyClass& cl) const { cl.def(IterativeSolverVisitor()) .def(bp::init<>("Default constructor")) .def(bp::init( bp::arg("A"), "Initialize the solver with matrix A for further Ax=b solving.\n" "This constructor is a shortcut for the default constructor " "followed by a call to compute().")); } static void expose(const std::string& name = "ConjugateGradient") { bp::class_(name.c_str(), bp::no_init) .def(ConjugateGradientVisitor()) .def(IdVisitor()); } }; } // namespace eigenpy #endif // ifndef __eigenpy_conjugate_gradient_hpp__