Simplify the Block Jacobi and Schur Jacobi preconditioners.

1. Extend the implementation of BlockRandomAccessDiagonalMatrix
by adding Invert and RightMultiply methods.

2. Simplify the implementation of the Schur Jacobi preconditioner
using these new methods.

3. Replace the custom storage used inside Block Jacobi preconditioner
with BlockRandomAccessDiagonalMatrix and simplify its implementation
too.

Change-Id: I9d4888b35f0f228c08244abbdda5298b3ce9c466
This commit is contained in:
Sameer Agarwal
2014-09-24 23:54:18 -07:00
parent 8f7be1036b
commit 4ad9149082
9 changed files with 289 additions and 158 deletions
+1
View File
@@ -234,6 +234,7 @@ IF (BUILD_TESTING AND GFLAGS)
CERES_TEST(autodiff)
CERES_TEST(autodiff_cost_function)
CERES_TEST(autodiff_local_parameterization)
CERES_TEST(block_jacobi_preconditioner)
CERES_TEST(block_random_access_dense_matrix)
CERES_TEST(block_random_access_diagonal_matrix)
CERES_TEST(block_random_access_sparse_matrix)