decompositions.cpp 1.11 KB
Newer Older
1
2
3
4
/*
 * Copyright 2020 INRIA
 */

5
#include "eigenpy/fwd.hpp"
6

7
8
#include "eigenpy/decompositions/decompositions.hpp"

9
#include "eigenpy/decompositions/EigenSolver.hpp"
10
#include "eigenpy/decompositions/SelfAdjointEigenSolver.hpp"
Justin Carpentier's avatar
Justin Carpentier committed
11
#include "eigenpy/decompositions/LLT.hpp"
12
#include "eigenpy/decompositions/LDLT.hpp"
13
14
15
16
17
18
19
20

namespace eigenpy
{
  void exposeDecompositions()
  {
    using namespace Eigen;
    namespace bp = boost::python;
    
Justin Carpentier's avatar
Justin Carpentier committed
21
22
23
24
    EigenSolverVisitor<MatrixXd>::expose("EigenSolver");
    SelfAdjointEigenSolverVisitor<MatrixXd>::expose("SelfAdjointEigenSolver");
    LLTSolverVisitor<MatrixXd>::expose("LLT");
    LDLTSolverVisitor<MatrixXd>::expose("LDLT");
25
26
27
28
29
30
31
32
33
34
35
36
37
38

    {
      bp::enum_<DecompositionOptions>("DecompositionOptions")
      .value("ComputeFullU",ComputeFullU)
      .value("ComputeThinU",ComputeThinU)
      .value("ComputeFullV",ComputeFullV)
      .value("ComputeThinV",ComputeThinV)
      .value("EigenvaluesOnly",EigenvaluesOnly)
      .value("ComputeEigenvectors",ComputeEigenvectors)
      .value("Ax_lBx",Ax_lBx)
      .value("ABx_lx",ABx_lx)
      .value("BAx_lx",BAx_lx)
      ;
    }
39
40
41
    
  }
} // namespace eigenpy