1 #ifndef VIENNACL_LINALG_TRED2_HPP_
2 #define VIENNACL_LINALG_TRED2_HPP_
28 #include <boost/numeric/ublas/matrix.hpp>
39 template<
typename ScalarType>
43 #ifdef VIENNACL_WITH_OPENMP
45 omp_set_num_threads(omp_get_max_threads());
52 std::cerr <<
"ViennaCL: Warning in inplace_tred2(): Matrix is not hermitian (or real symmetric)" << std::endl;
53 block_size=std::min(n,block_size);
56 ScalarType** rows=
new ScalarType*[n];
58 rows[i]=(ScalarType*)&A(i,0);
std::size_t vcl_size_t
Definition: forwards.h:58
optimized linear algebra operations for the CPU
void inplace_tred2(boost::numeric::ublas::matrix< ScalarType > const &A, vcl_size_t block_size=1)
Inplace reduction of a hermitian (or real symmetric) to tridiagonal form using householder similarity...
Definition: tred2.hpp:40