Skip to content

Commit e387dcb

Browse files
committed
Switch IncompleteLUT and IncompleteCholesky in eigenpy.solvers scope
1 parent 7185c2e commit e387dcb

File tree

10 files changed

+20
-47
lines changed

10 files changed

+20
-47
lines changed

CMakeLists.txt

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,9 @@ set(${PROJECT_NAME}_SOLVERS_HEADERS
195195
include/eigenpy/solvers/ConjugateGradient.hpp
196196
include/eigenpy/solvers/SparseSolverBase.hpp
197197
include/eigenpy/solvers/BasicPreconditioners.hpp
198-
include/eigenpy/solvers/BFGSPreconditioners.hpp)
198+
include/eigenpy/solvers/BFGSPreconditioners.hpp
199+
include/eigenpy/solvers/IncompleteCholesky.hpp
200+
include/eigenpy/solvers/IncompleteLUT.hpp)
199201

200202
set(${PROJECT_NAME}_EIGEN_HEADERS include/eigenpy/eigen/EigenBase.hpp)
201203

@@ -214,9 +216,7 @@ set(${PROJECT_NAME}_DECOMPOSITIONS_SPARSE_HEADERS
214216
include/eigenpy/decompositions/sparse/LDLT.hpp
215217
include/eigenpy/decompositions/sparse/LU.hpp
216218
include/eigenpy/decompositions/sparse/SimplicialCholesky.hpp
217-
include/eigenpy/decompositions/sparse/SparseSolverBase.hpp
218-
include/eigenpy/decompositions/sparse/IncompleteCholesky.hpp
219-
include/eigenpy/decompositions/sparse/IncompleteLUT.hpp)
219+
include/eigenpy/decompositions/sparse/SparseSolverBase.hpp)
220220

221221
if(BUILD_WITH_CHOLMOD_SUPPORT)
222222
list(APPEND ${PROJECT_NAME}_DECOMPOSITIONS_SPARSE_HEADERS
@@ -341,9 +341,7 @@ set(${PROJECT_NAME}_DECOMPOSITIONS_SOURCES
341341
src/decompositions/self-adjoint-eigen-solver.cpp
342342
src/decompositions/permutation-matrix.cpp
343343
src/decompositions/simplicial-llt-solver.cpp
344-
src/decompositions/simplicial-ldlt-solver.cpp
345-
src/decompositions/incomplete-cholesky.cpp
346-
src/decompositions/incomplete-lut.cpp)
344+
src/decompositions/simplicial-ldlt-solver.cpp)
347345

348346
if(BUILD_WITH_CHOLMOD_SUPPORT)
349347
list(APPEND ${PROJECT_NAME}_DECOMPOSITIONS_SOURCES

src/decompositions/decompositions.cpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,6 @@ void exposePartialPivLUSolver();
2525
void exposeQRSolvers();
2626
void exposeSimplicialLLTSolver();
2727
void exposeSimplicialLDLTSolver();
28-
void exposeIncompleteCholesky();
29-
void exposeIncompleteLUT();
3028
void exposeSparseLUSolver();
3129
void exposeSparseQRSolver();
3230
void exposePermutationMatrix();
@@ -72,8 +70,6 @@ void exposeDecompositions() {
7270
exposeSimplicialLDLTSolver();
7371
exposeSparseLUSolver();
7472
exposeSparseQRSolver();
75-
exposeIncompleteCholesky();
76-
exposeIncompleteLUT();
7773

7874
exposePermutationMatrix();
7975

src/decompositions/incomplete-cholesky.cpp

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/decompositions/incomplete-lut.cpp

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/solvers/solvers.cpp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@
1616
#include "eigenpy/solvers/BiCGSTAB.hpp"
1717
#include "eigenpy/solvers/MINRES.hpp"
1818

19+
#include "eigenpy/solvers/IncompleteLUT.hpp"
20+
#include "eigenpy/solvers/IncompleteCholesky.hpp"
21+
1922
namespace eigenpy {
2023
void exposeSolvers() {
2124
using namespace Eigen;
@@ -57,6 +60,10 @@ void exposeSolvers() {
5760
BiCGSTABVisitor<IdentityBiCGSTAB>::expose("IdentityBiCGSTAB");
5861

5962
MINRESSolverVisitor<MatrixXd>::expose("MINRES");
63+
64+
typedef SparseMatrix<double, ColMajor> ColMajorSparseMatrix;
65+
IncompleteLUTVisitor<ColMajorSparseMatrix>::expose("IncompleteLUT");
66+
IncompleteCholeskyVisitor<ColMajorSparseMatrix>::expose("IncompleteCholesky");
6067
}
6168
} // namespace eigenpy
6269

unittest/CMakeLists.txt

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -217,12 +217,10 @@ if(BUILD_TESTING_SCIPY)
217217
add_python_eigenpy_unit_test(
218218
"py-SimplicialLDLT"
219219
"unittest/python/decompositions/sparse/test_SimplicialLDLT.py")
220-
add_python_eigenpy_unit_test(
221-
"py-IncompleteCholesky"
222-
"unittest/python/decompositions/sparse/test_IncompleteCholesky.py")
223-
add_python_eigenpy_unit_test(
224-
"py-IncompleteLUT"
225-
"unittest/python/decompositions/sparse/test_IncompleteLUT.py")
220+
add_python_eigenpy_unit_test("py-IncompleteCholesky"
221+
"unittest/python/test_IncompleteCholesky.py")
222+
add_python_eigenpy_unit_test("py-IncompleteLUT"
223+
"unittest/python/test_IncompleteLUT.py")
226224
add_python_eigenpy_unit_test(
227225
"py-SparseLU" "unittest/python/decompositions/sparse/test_SparseLU.py")
228226
add_python_eigenpy_unit_test(

unittest/python/decompositions/sparse/test_IncompleteCholesky.py renamed to unittest/python/test_IncompleteCholesky.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
A = (A + A.T) * 0.5 + np.diag(5.0 + rng.random(dim))
1111
A = csc_matrix(A)
1212

13-
ichol = eigenpy.IncompleteCholesky(A)
13+
ichol = eigenpy.solvers.IncompleteCholesky(A)
1414
assert ichol.info() == eigenpy.ComputationInfo.Success
1515
assert ichol.rows() == dim
1616
assert ichol.cols() == dim

unittest/python/decompositions/sparse/test_IncompleteLUT.py renamed to unittest/python/test_IncompleteLUT.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
A = (A + A.T) * 0.5 + np.diag(5.0 + rng.random(dim))
1111
A = csc_matrix(A)
1212

13-
ilut = eigenpy.IncompleteLUT(A)
13+
ilut = eigenpy.solvers.IncompleteLUT(A)
1414
assert ilut.info() == eigenpy.ComputationInfo.Success
1515
assert ilut.rows() == dim
1616
assert ilut.cols() == dim
@@ -40,10 +40,10 @@
4040
ilut.factorize(A)
4141
assert ilut.info() == eigenpy.ComputationInfo.Success
4242

43-
ilut_params = eigenpy.IncompleteLUT(A, 1e-4, 15)
43+
ilut_params = eigenpy.solvers.IncompleteLUT(A, 1e-4, 15)
4444
assert ilut_params.info() == eigenpy.ComputationInfo.Success
4545

46-
ilut_set = eigenpy.IncompleteLUT()
46+
ilut_set = eigenpy.solvers.IncompleteLUT()
4747
ilut_set.setDroptol(1e-3)
4848
ilut_set.setFillfactor(20)
4949
ilut_set.compute(A)

0 commit comments

Comments
 (0)