diff options
author | 2008-08-23 17:11:44 +0000 | |
---|---|---|
committer | 2008-08-23 17:11:44 +0000 | |
commit | f2f48b6560b1921c6847bd91b68da9825419d0a3 (patch) | |
tree | e4081e9c63df924e5216081216c3ddfb14db0ed0 /Eigen/src/LU/LU.h | |
parent | 2120fed849e1d00724694a2c8a041ec5561c750b (diff) |
* remove LargeBit and related stuff
* replaced the Flags template parameter of Matrix by StorageOrder
and move it back to the 4th position such that we don't have to
worry about the two Max* template parameters
* extended EIGEN_USING_MATRIX_TYPEDEFS with the ei_* math functions
Diffstat (limited to 'Eigen/src/LU/LU.h')
-rw-r--r-- | Eigen/src/LU/LU.h | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/Eigen/src/LU/LU.h b/Eigen/src/LU/LU.h index af385df29..6e844e196 100644 --- a/Eigen/src/LU/LU.h +++ b/Eigen/src/LU/LU.h @@ -72,7 +72,8 @@ template<typename MatrixType> class LU }; typedef Matrix<typename MatrixType::Scalar, MatrixType::ColsAtCompileTime, Dynamic, - MatrixType::MaxColsAtCompileTime, MaxSmallDimAtCompileTime> KernelReturnType; + MatrixType::Flags&RowMajorBit, + MatrixType::MaxColsAtCompileTime, MaxSmallDimAtCompileTime> KernelReturnType; /** Constructor. * @@ -151,6 +152,7 @@ template<typename MatrixType> class LU */ void computeKernel(Matrix<typename MatrixType::Scalar, MatrixType::ColsAtCompileTime, Dynamic, + MatrixType::Flags&RowMajorBit, MatrixType::MaxColsAtCompileTime, LU<MatrixType>::MaxSmallDimAtCompileTime > *result) const; @@ -372,6 +374,7 @@ typename ei_traits<MatrixType>::Scalar LU<MatrixType>::determinant() const template<typename MatrixType> void LU<MatrixType>::computeKernel(Matrix<typename MatrixType::Scalar, MatrixType::ColsAtCompileTime, Dynamic, + MatrixType::Flags&RowMajorBit, MatrixType::MaxColsAtCompileTime, LU<MatrixType>::MaxSmallDimAtCompileTime > *result) const @@ -396,7 +399,8 @@ void LU<MatrixType>::computeKernel(Matrix<typename MatrixType::Scalar, * independent vectors in Ker U. */ - Matrix<Scalar, Dynamic, Dynamic, MatrixType::MaxColsAtCompileTime, MaxSmallDimAtCompileTime> + Matrix<Scalar, Dynamic, Dynamic, MatrixType::Flags&RowMajorBit, + MatrixType::MaxColsAtCompileTime, MaxSmallDimAtCompileTime> y(-m_lu.corner(TopRight, m_rank, dimker)); m_lu.corner(TopLeft, m_rank, m_rank) @@ -414,8 +418,9 @@ const typename LU<MatrixType>::KernelReturnType LU<MatrixType>::kernel() const { Matrix<typename MatrixType::Scalar, MatrixType::ColsAtCompileTime, Dynamic, - MatrixType::MaxColsAtCompileTime, - LU<MatrixType>::MaxSmallDimAtCompileTime> result(m_lu.cols(), dimensionOfKernel()); + MatrixType::Flags&RowMajorBit, + MatrixType::MaxColsAtCompileTime, + LU<MatrixType>::MaxSmallDimAtCompileTime> result(m_lu.cols(), dimensionOfKernel()); computeKernel(&result); return result; } @@ -446,6 +451,7 @@ bool LU<MatrixType>::solve( // Step 2 Matrix<Scalar, MatrixType::RowsAtCompileTime, MatrixType::RowsAtCompileTime, + MatrixType::Flags&RowMajorBit, MatrixType::MaxRowsAtCompileTime, MatrixType::MaxRowsAtCompileTime> l(rows, rows); l.setZero(); @@ -464,6 +470,7 @@ bool LU<MatrixType>::solve( return false; } Matrix<Scalar, Dynamic, OtherDerived::ColsAtCompileTime, + MatrixType::Flags&RowMajorBit, MatrixType::MaxRowsAtCompileTime, OtherDerived::MaxColsAtCompileTime> d(c.corner(TopLeft, m_rank, c.cols())); m_lu.corner(TopLeft, m_rank, m_rank) |