21#include "rheolef/compiler.h"
22#include "rheolef/compiler_eigen.h"
25template <
class Size,
class T,
class OutputIterator>
29 using namespace Eigen;
30 Matrix<T,Dynamic,1>
diag(R), subdiag(R-1);
32 for (
size_t r = 1; r < R; r++) {
36 for (
size_t r = 2; r < R; r++) {
40 SelfAdjointEigenSolver<Matrix<T,Dynamic,1> > es;
41 es.computeFromTridiagonal (
diag, subdiag, EigenvaluesOnly);
42 for (
size_t i = 0; i < R; ++i) zeta[i] = es.eigenvalues()(i);
43 if (
alpha ==
beta && R%2 == 1) zeta[R/2] = 0.;
Float alpha[pmax+1][pmax+1]
This file is part of Rheolef.
void jacobi_roots(Size R, T alpha, T beta, OutputIterator zeta)
csr< T, M > diag(const vec< T, M > &d)