aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/cholesky.cpp
diff options
context:
space:
mode:
authorGravatar Adolfo Rodriguez Tsouroukdissian <adolfo.rodriguez@pal-robotics.com>2010-04-21 17:15:57 +0200
committerGravatar Adolfo Rodriguez Tsouroukdissian <adolfo.rodriguez@pal-robotics.com>2010-04-21 17:15:57 +0200
commit28dde19e40a3d758faa94f0fc228857f7b3192ea (patch)
tree2647d94ffd250e7b215e98baddcecb8fb651543a /test/cholesky.cpp
parentfaf8f7732dffd33eeae8afc8aad165668c8b6b2e (diff)
- Added problem size constructor to decompositions that did not have one. It preallocates member data structures.
- Updated unit tests to check above constructor. - In the compute() method of decompositions: Made temporary matrices/vectors class members to avoid heap allocations during compute() (when dynamic matrices are used, of course). These changes can speed up decomposition computation time when a solver instance is used to solve multiple same-sized problems. An added benefit is that the compute() method can now be invoked in contexts were heap allocations are forbidden, such as in real-time control loops. CAVEAT: Not all of the decompositions in the Eigenvalues module have a heap-allocation-free compute() method. A future patch may address this issue, but some required API changes need to be incorporated first.
Diffstat (limited to 'test/cholesky.cpp')
-rw-r--r--test/cholesky.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/test/cholesky.cpp b/test/cholesky.cpp
index a446f5d73..0ae26c7d5 100644
--- a/test/cholesky.cpp
+++ b/test/cholesky.cpp
@@ -163,4 +163,8 @@ void test_cholesky()
CALL_SUBTEST_7( cholesky_verify_assert<Matrix3d>() );
CALL_SUBTEST_8( cholesky_verify_assert<MatrixXf>() );
CALL_SUBTEST_2( cholesky_verify_assert<MatrixXd>() );
+
+ // Test problem size constructors
+ CALL_SUBTEST_9( LLT<MatrixXf>(10) );
+ CALL_SUBTEST_9( LDLT<MatrixXf>(10) );
}