26 #ifndef EIGEN_HOUSEHOLDER_H
27 #define EIGEN_HOUSEHOLDER_H
32 template<
int n>
struct decrement_size
56 template<
typename Derived>
60 makeHouseholder(essentialPart, tau, beta);
78 template<
typename Derived>
79 template<
typename EssentialPart>
81 EssentialPart& essential,
102 essential = tail / (c0 - beta);
122 template<
typename Derived>
123 template<
typename EssentialPart>
125 const EssentialPart& essential,
137 tmp.noalias() = essential.adjoint() * bottom;
139 this->
row(0) -= tau * tmp;
140 bottom.noalias() -= tau * essential * tmp;
159 template<
typename Derived>
160 template<
typename EssentialPart>
162 const EssentialPart& essential,
174 tmp.noalias() = right * essential.conjugate();
176 this->
col(0) -= tau * tmp;
177 right.noalias() -= tau * tmp * essential.transpose();
183 #endif // EIGEN_HOUSEHOLDER_H