aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Eigen/src/Eigenvalues/Tridiagonalization.h22
-rw-r--r--doc/examples/class_FixedVectorBlock.cpp4
-rw-r--r--doc/examples/class_VectorBlock.cpp4
-rw-r--r--doc/snippets/Tridiagonalization_diagonal.cpp2
4 files changed, 16 insertions, 16 deletions
diff --git a/Eigen/src/Eigenvalues/Tridiagonalization.h b/Eigen/src/Eigenvalues/Tridiagonalization.h
index 755bca1aa..ae4cdce7a 100644
--- a/Eigen/src/Eigenvalues/Tridiagonalization.h
+++ b/Eigen/src/Eigenvalues/Tridiagonalization.h
@@ -97,15 +97,15 @@ template<typename _MatrixType> class Tridiagonalization
typedef internal::TridiagonalizationMatrixTReturnType<MatrixTypeRealView> MatrixTReturnType;
typedef typename internal::conditional<NumTraits<Scalar>::IsComplex,
- typename Diagonal<MatrixType,0>::RealReturnType,
- Diagonal<MatrixType,0>
+ const typename Diagonal<const MatrixType>::RealReturnType,
+ const Diagonal<const MatrixType>
>::type DiagonalReturnType;
typedef typename internal::conditional<NumTraits<Scalar>::IsComplex,
- typename Diagonal<
- Block<MatrixType,SizeMinusOne,SizeMinusOne>,0 >::RealReturnType,
- Diagonal<
- Block<MatrixType,SizeMinusOne,SizeMinusOne>,0 >
+ const typename Diagonal<
+ Block<const MatrixType,SizeMinusOne,SizeMinusOne> >::RealReturnType,
+ const Diagonal<
+ Block<const MatrixType,SizeMinusOne,SizeMinusOne> >
>::type SubDiagonalReturnType;
/** \brief Return type of matrixQ() */
@@ -292,7 +292,7 @@ template<typename _MatrixType> class Tridiagonalization
*
* \sa matrixT(), subDiagonal()
*/
- const DiagonalReturnType diagonal() const;
+ DiagonalReturnType diagonal() const;
/** \brief Returns the subdiagonal of the tridiagonal matrix T in the decomposition.
*
@@ -304,7 +304,7 @@ template<typename _MatrixType> class Tridiagonalization
*
* \sa diagonal() for an example, matrixT()
*/
- const SubDiagonalReturnType subDiagonal() const;
+ SubDiagonalReturnType subDiagonal() const;
protected:
@@ -314,7 +314,7 @@ template<typename _MatrixType> class Tridiagonalization
};
template<typename MatrixType>
-const typename Tridiagonalization<MatrixType>::DiagonalReturnType
+typename Tridiagonalization<MatrixType>::DiagonalReturnType
Tridiagonalization<MatrixType>::diagonal() const
{
eigen_assert(m_isInitialized && "Tridiagonalization is not initialized.");
@@ -322,12 +322,12 @@ Tridiagonalization<MatrixType>::diagonal() const
}
template<typename MatrixType>
-const typename Tridiagonalization<MatrixType>::SubDiagonalReturnType
+typename Tridiagonalization<MatrixType>::SubDiagonalReturnType
Tridiagonalization<MatrixType>::subDiagonal() const
{
eigen_assert(m_isInitialized && "Tridiagonalization is not initialized.");
Index n = m_matrix.rows();
- return Block<MatrixType,SizeMinusOne,SizeMinusOne>(m_matrix, 1, 0, n-1,n-1).diagonal();
+ return Block<const MatrixType,SizeMinusOne,SizeMinusOne>(m_matrix, 1, 0, n-1,n-1).diagonal();
}
namespace internal {
diff --git a/doc/examples/class_FixedVectorBlock.cpp b/doc/examples/class_FixedVectorBlock.cpp
index 9be7d8d71..c88c9fbf1 100644
--- a/doc/examples/class_FixedVectorBlock.cpp
+++ b/doc/examples/class_FixedVectorBlock.cpp
@@ -11,10 +11,10 @@ firstTwo(MatrixBase<Derived>& v)
}
template<typename Derived>
-const Eigen::VectorBlock<Derived, 2>
+const Eigen::VectorBlock<const Derived, 2>
firstTwo(const MatrixBase<Derived>& v)
{
- return Eigen::VectorBlock<Derived, 2>(v.derived(), 0);
+ return Eigen::VectorBlock<const Derived, 2>(v.derived(), 0);
}
int main(int, char**)
diff --git a/doc/examples/class_VectorBlock.cpp b/doc/examples/class_VectorBlock.cpp
index 2f02c8f69..dc213df20 100644
--- a/doc/examples/class_VectorBlock.cpp
+++ b/doc/examples/class_VectorBlock.cpp
@@ -11,10 +11,10 @@ segmentFromRange(MatrixBase<Derived>& v, int start, int end)
}
template<typename Derived>
-const Eigen::VectorBlock<Derived>
+const Eigen::VectorBlock<const Derived>
segmentFromRange(const MatrixBase<Derived>& v, int start, int end)
{
- return Eigen::VectorBlock<Derived>(v.derived(), start, end-start);
+ return Eigen::VectorBlock<const Derived>(v.derived(), start, end-start);
}
int main(int, char**)
diff --git a/doc/snippets/Tridiagonalization_diagonal.cpp b/doc/snippets/Tridiagonalization_diagonal.cpp
index a4a5a9c5a..6eec82169 100644
--- a/doc/snippets/Tridiagonalization_diagonal.cpp
+++ b/doc/snippets/Tridiagonalization_diagonal.cpp
@@ -4,7 +4,7 @@ cout << "Here is a random self-adjoint 4x4 matrix:" << endl << A << endl << endl
Tridiagonalization<MatrixXcd> triOfA(A);
MatrixXd T = triOfA.matrixT();
-cout << "The tridiagonal matrix T is:" << endl << triOfA.matrixT() << endl << endl;
+cout << "The tridiagonal matrix T is:" << endl << T << endl << endl;
cout << "We can also extract the diagonals of T directly ..." << endl;
VectorXd diag = triOfA.diagonal();