* Added a generalized eigen solver for the selfadjoint case.

(as new members to SelfAdjointEigenSolver)
  The QR module now depends on Cholesky.
* Fix Transpose to correctly preserve the *TriangularBit.
This commit is contained in:
Gael Guennebaud
2008-06-14 19:42:12 +00:00
parent f07f907810
commit 4af7089ab8
6 changed files with 79 additions and 5 deletions

View File

@@ -48,7 +48,12 @@ struct ei_traits<Transpose<MatrixType> >
ColsAtCompileTime = MatrixType::RowsAtCompileTime,
MaxRowsAtCompileTime = MatrixType::MaxColsAtCompileTime,
MaxColsAtCompileTime = MatrixType::MaxRowsAtCompileTime,
Flags = (int(_MatrixTypeNested::Flags) ^ RowMajorBit) & ~Like1DArrayBit,
Flags = (int(_MatrixTypeNested::Flags) ^ RowMajorBit)
& ~( Like1DArrayBit | LowerTriangularBit | UpperTriangularBit)
| (int(_MatrixTypeNested::Flags)&UpperTriangularBit ? LowerTriangularBit : 0)
| (int(_MatrixTypeNested::Flags)&LowerTriangularBit ? UpperTriangularBit : 0),
// Note that the above test cannot be simplified using ^ because a diagonal matrix
// has both LowerTriangularBit and UpperTriangularBit and both must be preserved.
CoeffReadCost = _MatrixTypeNested::CoeffReadCost
};
};