mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
* move dummy_precision and epsilon to NumTraits
* make NumTraits inherits std::numeric_limits
This commit is contained in:
@@ -296,7 +296,7 @@ class AmbiVector<_Scalar>::Iterator
|
||||
* In practice, all coefficients having a magnitude smaller than \a epsilon
|
||||
* are skipped.
|
||||
*/
|
||||
Iterator(const AmbiVector& vec, RealScalar epsilon = RealScalar(0.1)*dummy_precision<RealScalar>())
|
||||
Iterator(const AmbiVector& vec, RealScalar epsilon = RealScalar(0.1)*NumTraits<RealScalar>::dummy_precision())
|
||||
: m_vector(vec)
|
||||
{
|
||||
m_epsilon = epsilon;
|
||||
|
||||
@@ -185,7 +185,7 @@ class CompressedStorage
|
||||
return m_values[id];
|
||||
}
|
||||
|
||||
void prune(Scalar reference, RealScalar epsilon = dummy_precision<RealScalar>())
|
||||
void prune(Scalar reference, RealScalar epsilon = NumTraits<RealScalar>::dummy_precision())
|
||||
{
|
||||
size_t k = 0;
|
||||
size_t n = size();
|
||||
|
||||
@@ -209,7 +209,7 @@ class DynamicSparseMatrix
|
||||
|
||||
inline void finalize() {}
|
||||
|
||||
void prune(Scalar reference, RealScalar epsilon = dummy_precision<RealScalar>())
|
||||
void prune(Scalar reference, RealScalar epsilon = NumTraits<RealScalar>::dummy_precision())
|
||||
{
|
||||
for (int j=0; j<outerSize(); ++j)
|
||||
m_data[j].prune(reference,epsilon);
|
||||
|
||||
@@ -94,7 +94,7 @@ class SparseLDLT
|
||||
: m_flags(flags), m_status(0)
|
||||
{
|
||||
ei_assert((MatrixType::Flags&RowMajorBit)==0);
|
||||
m_precision = RealScalar(0.1) * Eigen::dummy_precision<RealScalar>();
|
||||
m_precision = RealScalar(0.1) * Eigen::NumTraits<RealScalar>::dummy_precision();
|
||||
}
|
||||
|
||||
/** Creates a LDLT object and compute the respective factorization of \a matrix using
|
||||
@@ -103,7 +103,7 @@ class SparseLDLT
|
||||
: m_matrix(matrix.rows(), matrix.cols()), m_flags(flags), m_status(0)
|
||||
{
|
||||
ei_assert((MatrixType::Flags&RowMajorBit)==0);
|
||||
m_precision = RealScalar(0.1) * Eigen::dummy_precision<RealScalar>();
|
||||
m_precision = RealScalar(0.1) * Eigen::NumTraits<RealScalar>::dummy_precision();
|
||||
compute(matrix);
|
||||
}
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ class SparseLLT
|
||||
SparseLLT(int flags = 0)
|
||||
: m_flags(flags), m_status(0)
|
||||
{
|
||||
m_precision = RealScalar(0.1) * Eigen::dummy_precision<RealScalar>();
|
||||
m_precision = RealScalar(0.1) * Eigen::NumTraits<RealScalar>::dummy_precision();
|
||||
}
|
||||
|
||||
/** Creates a LLT object and compute the respective factorization of \a matrix using
|
||||
@@ -62,7 +62,7 @@ class SparseLLT
|
||||
SparseLLT(const MatrixType& matrix, int flags = 0)
|
||||
: m_matrix(matrix.rows(), matrix.cols()), m_flags(flags), m_status(0)
|
||||
{
|
||||
m_precision = RealScalar(0.1) * Eigen::dummy_precision<RealScalar>();
|
||||
m_precision = RealScalar(0.1) * Eigen::NumTraits<RealScalar>::dummy_precision();
|
||||
compute(matrix);
|
||||
}
|
||||
|
||||
|
||||
@@ -59,7 +59,7 @@ class SparseLU
|
||||
SparseLU(int flags = 0)
|
||||
: m_flags(flags), m_status(0)
|
||||
{
|
||||
m_precision = RealScalar(0.1) * Eigen::dummy_precision<RealScalar>();
|
||||
m_precision = RealScalar(0.1) * Eigen::NumTraits<RealScalar>::dummy_precision();
|
||||
}
|
||||
|
||||
/** Creates a LU object and compute the respective factorization of \a matrix using
|
||||
@@ -67,7 +67,7 @@ class SparseLU
|
||||
SparseLU(const MatrixType& matrix, int flags = 0)
|
||||
: /*m_matrix(matrix.rows(), matrix.cols()),*/ m_flags(flags), m_status(0)
|
||||
{
|
||||
m_precision = RealScalar(0.1) * Eigen::dummy_precision<RealScalar>();
|
||||
m_precision = RealScalar(0.1) * Eigen::NumTraits<RealScalar>::dummy_precision();
|
||||
compute(matrix);
|
||||
}
|
||||
|
||||
|
||||
@@ -350,7 +350,7 @@ class SparseMatrix
|
||||
}
|
||||
}
|
||||
|
||||
void prune(Scalar reference, RealScalar epsilon = dummy_precision<RealScalar>())
|
||||
void prune(Scalar reference, RealScalar epsilon = NumTraits<RealScalar>::dummy_precision())
|
||||
{
|
||||
int k = 0;
|
||||
for (int j=0; j<m_outerSize; ++j)
|
||||
|
||||
@@ -513,32 +513,32 @@ template<typename Derived> class SparseMatrixBase : public AnyMatrixBase<Derived
|
||||
|
||||
template<typename OtherDerived>
|
||||
bool isApprox(const SparseMatrixBase<OtherDerived>& other,
|
||||
RealScalar prec = dummy_precision<Scalar>()) const
|
||||
RealScalar prec = NumTraits<Scalar>::dummy_precision()) const
|
||||
{ return toDense().isApprox(other.toDense(),prec); }
|
||||
|
||||
template<typename OtherDerived>
|
||||
bool isApprox(const MatrixBase<OtherDerived>& other,
|
||||
RealScalar prec = dummy_precision<Scalar>()) const
|
||||
RealScalar prec = NumTraits<Scalar>::dummy_precision()) const
|
||||
{ return toDense().isApprox(other,prec); }
|
||||
// bool isMuchSmallerThan(const RealScalar& other,
|
||||
// RealScalar prec = dummy_precision<Scalar>()) const;
|
||||
// RealScalar prec = NumTraits<Scalar>::dummy_precision()) const;
|
||||
// template<typename OtherDerived>
|
||||
// bool isMuchSmallerThan(const MatrixBase<OtherDerived>& other,
|
||||
// RealScalar prec = dummy_precision<Scalar>()) const;
|
||||
// RealScalar prec = NumTraits<Scalar>::dummy_precision()) const;
|
||||
|
||||
// bool isApproxToConstant(const Scalar& value, RealScalar prec = dummy_precision<Scalar>()) const;
|
||||
// bool isZero(RealScalar prec = dummy_precision<Scalar>()) const;
|
||||
// bool isOnes(RealScalar prec = dummy_precision<Scalar>()) const;
|
||||
// bool isIdentity(RealScalar prec = dummy_precision<Scalar>()) const;
|
||||
// bool isDiagonal(RealScalar prec = dummy_precision<Scalar>()) const;
|
||||
// bool isApproxToConstant(const Scalar& value, RealScalar prec = NumTraits<Scalar>::dummy_precision()) const;
|
||||
// bool isZero(RealScalar prec = NumTraits<Scalar>::dummy_precision()) const;
|
||||
// bool isOnes(RealScalar prec = NumTraits<Scalar>::dummy_precision()) const;
|
||||
// bool isIdentity(RealScalar prec = NumTraits<Scalar>::dummy_precision()) const;
|
||||
// bool isDiagonal(RealScalar prec = NumTraits<Scalar>::dummy_precision()) const;
|
||||
|
||||
// bool isUpper(RealScalar prec = dummy_precision<Scalar>()) const;
|
||||
// bool isLower(RealScalar prec = dummy_precision<Scalar>()) const;
|
||||
// bool isUpper(RealScalar prec = NumTraits<Scalar>::dummy_precision()) const;
|
||||
// bool isLower(RealScalar prec = NumTraits<Scalar>::dummy_precision()) const;
|
||||
|
||||
// template<typename OtherDerived>
|
||||
// bool isOrthogonal(const MatrixBase<OtherDerived>& other,
|
||||
// RealScalar prec = dummy_precision<Scalar>()) const;
|
||||
// bool isUnitary(RealScalar prec = dummy_precision<Scalar>()) const;
|
||||
// RealScalar prec = NumTraits<Scalar>::dummy_precision()) const;
|
||||
// bool isUnitary(RealScalar prec = NumTraits<Scalar>::dummy_precision()) const;
|
||||
|
||||
// template<typename OtherDerived>
|
||||
// inline bool operator==(const MatrixBase<OtherDerived>& other) const
|
||||
|
||||
@@ -202,7 +202,7 @@ class SparseVector
|
||||
EIGEN_DEPRECATED void endFill() {}
|
||||
inline void finalize() {}
|
||||
|
||||
void prune(Scalar reference, RealScalar epsilon = dummy_precision<RealScalar>())
|
||||
void prune(Scalar reference, RealScalar epsilon = NumTraits<RealScalar>::dummy_precision())
|
||||
{
|
||||
m_data.prune(reference,epsilon);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user