Automatic Differentiation
 
Loading...
Searching...
No Matches

◆ block_householder_tridiag_cl()

void stan::math::internal::block_householder_tridiag_cl ( const matrix_cl< double > &  A,
matrix_cl< double > &  packed,
const int  r = 60 
)
inline

Tridiagonalize a symmetric matrix using block Housholder algorithm.

A = Q * T

  • Q^T, where T is tridiagonal and Q is orthonormal.
    Parameters
    AInput matrix
    [out]packedPacked form of the tridiagonal matrix. Elements of the resulting symmetric tridiagonal matrix T are in the diagonal and first superdiagonal. Columns bellow diagonal contain householder vectors that can be used to construct orthogonal matrix Q.
    rBlock size. Affects only performance of the algorithm. Optimal value depends on the size of A and cache of the processor. For larger matrices or larger cache sizes a larger value is optimal.

Definition at line 29 of file tridiagonalization.hpp.