HLIBpro  2.6
TLL Class Reference

computes Cholesky factorisation \( A = LL^T \) or \( A=LL^H \) More...

#include <mat_fac.hh>

Public Member Functions

void factorise (TMatrix *A, const TTruncAcc &acc) const
 
auto eval_matrix (TMatrix *L, const matform_t matform) const -> std::unique_ptr< TFacMatrix >
 
auto inv_matrix (TMatrix *L, const matform_t matform) const -> std::unique_ptr< TFacInvMatrix >
 
size_t pm_steps (const TMatrix *A) const
 return number of factorisation steps for A for progress meter
 

Public Attributes

 __pad0__: _options( opts ) {} ~TLL () {} void set_options ( const fac_options_t opts ) { _options = opts
 standard constructor with optional Cholesky settings
 

Detailed Description

This class computes the Cholesky factorisation \(A = LL^T\) ( \(A = LL^H\)) of a symmetric (hermitian) matrix \(A\) with lower triangular matrix \(L\).

Support for multiple threads is available, although the expectable speedup is limited, e.g. best suited for at most 4 threads.

Member Function Documentation

◆ eval_matrix()

auto eval_matrix ( TMatrix L,
const matform_t  matform 
) const -> std::unique_ptr< TFacMatrix >

return suitable representation for evaluating Cholesky factor L

Parameters
LCholesky factor to be represented
matformformat of original, non-factorised matrix

◆ factorise()

void factorise ( TMatrix A,
const TTruncAcc acc 
) const

compute Cholesky factorisation of given matrix

Parameters
Aon input matrix to factorise; on output factor L
accaccuracy of factorisation

◆ inv_matrix()

auto inv_matrix ( TMatrix L,
const matform_t  matform 
) const -> std::unique_ptr< TFacInvMatrix >

return suitable inverse representation of Cholesky factor L

Parameters
LCholesky factor to be represented
matformformat of original, non-factorised matrix