diff options
author | Gael Guennebaud <g.gael@free.fr> | 2013-06-17 00:14:42 +0200 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2013-06-17 00:14:42 +0200 |
commit | 55365566b2f81656a58e3d3dad1a82ec3038ca64 (patch) | |
tree | 458e647ee49df1e3d0d48504713f4767a9b25235 /test/upperbidiagonalization.cpp | |
parent | 9f11f80db1b53d0f9b9173a777c0a644e763619a (diff) |
Fix HouseholderSequence::conjugate() and ::adjoint() and add respective unit tests.
Diffstat (limited to 'test/upperbidiagonalization.cpp')
-rw-r--r-- | test/upperbidiagonalization.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/test/upperbidiagonalization.cpp b/test/upperbidiagonalization.cpp index 5897cffab..d15bf588b 100644 --- a/test/upperbidiagonalization.cpp +++ b/test/upperbidiagonalization.cpp @@ -16,6 +16,7 @@ template<typename MatrixType> void upperbidiag(const MatrixType& m) const typename MatrixType::Index cols = m.cols(); typedef Matrix<typename MatrixType::RealScalar, MatrixType::RowsAtCompileTime, MatrixType::ColsAtCompileTime> RealMatrixType; + typedef Matrix<typename MatrixType::Scalar, MatrixType::ColsAtCompileTime, MatrixType::RowsAtCompileTime> TransposeMatrixType; MatrixType a = MatrixType::Random(rows,cols); internal::UpperBidiagonalization<MatrixType> ubd(a); @@ -24,6 +25,8 @@ template<typename MatrixType> void upperbidiag(const MatrixType& m) b.block(0,0,cols,cols) = ubd.bidiagonal(); MatrixType c = ubd.householderU() * b * ubd.householderV().adjoint(); VERIFY_IS_APPROX(a,c); + TransposeMatrixType d = ubd.householderV() * b.adjoint() * ubd.householderU().adjoint(); + VERIFY_IS_APPROX(a.adjoint(),d); } void test_upperbidiagonalization() |