aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/upperbidiagonalization.cpp
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2013-06-17 00:14:42 +0200
committerGravatar Gael Guennebaud <g.gael@free.fr>2013-06-17 00:14:42 +0200
commit55365566b2f81656a58e3d3dad1a82ec3038ca64 (patch)
tree458e647ee49df1e3d0d48504713f4767a9b25235 /test/upperbidiagonalization.cpp
parent9f11f80db1b53d0f9b9173a777c0a644e763619a (diff)
Fix HouseholderSequence::conjugate() and ::adjoint() and add respective unit tests.
Diffstat (limited to 'test/upperbidiagonalization.cpp')
-rw-r--r--test/upperbidiagonalization.cpp3
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()