- remove most of the metaprogramming kung fu in MathFunctions.h (only keep functions that differs from the std)
- remove the overloads for array expression that were in the std namespace
This commit is contained in:
Gael Guennebaud
2012-11-06 15:25:50 +01:00
parent 959ef37006
commit a76fbbf397
88 changed files with 496 additions and 468 deletions

View File

@@ -67,6 +67,9 @@ void MatrixBase<Derived>::makeHouseholder(
Scalar& tau,
RealScalar& beta) const
{
using std::sqrt;
using internal::conj;
EIGEN_STATIC_ASSERT_VECTOR_ONLY(EssentialPart)
VectorBlock<const Derived, EssentialPart::SizeAtCompileTime> tail(derived(), 1, size()-1);
@@ -81,11 +84,11 @@ void MatrixBase<Derived>::makeHouseholder(
}
else
{
beta = internal::sqrt(internal::abs2(c0) + tailSqNorm);
beta = sqrt(internal::abs2(c0) + tailSqNorm);
if (internal::real(c0)>=RealScalar(0))
beta = -beta;
essential = tail / (c0 - beta);
tau = internal::conj((beta - c0) / beta);
tau = conj((beta - c0) / beta);
}
}