Eigen::FABSum< Scalar, Width > Class Template Reference

#include <SparseInverse.h>

Public Member Functions

Scalar value ()
 
void operator+= (Scalar increment)
 

Private Attributes

KahanSum< Scalar_totalSum
 
Matrix< Scalar, Width, 1 > _block
 
Index _blockUsed {}
 

Member Function Documentation

◆ operator+=()

template<typename Scalar , Index Width = 16>
void Eigen::FABSum< Scalar, Width >::operator+= ( Scalar  increment)
inline
64  {
65  _block(_blockUsed++, 0) = increment;
66  if (_blockUsed == Width) {
67  _totalSum += _block.sum();
68  _blockUsed = 0;
69  }
70  }
Index _blockUsed
Definition: SparseInverse.h:59
KahanSum< Scalar > _totalSum
Definition: SparseInverse.h:57
Matrix< Scalar, Width, 1 > _block
Definition: SparseInverse.h:58

References Eigen::FABSum< Scalar, Width >::_block, Eigen::FABSum< Scalar, Width >::_blockUsed, and Eigen::FABSum< Scalar, Width >::_totalSum.

◆ value()

template<typename Scalar , Index Width = 16>
Scalar Eigen::FABSum< Scalar, Width >::value ( )
inline

Member Data Documentation

◆ _block

template<typename Scalar , Index Width = 16>
Matrix<Scalar, Width, 1> Eigen::FABSum< Scalar, Width >::_block
private

◆ _blockUsed

template<typename Scalar , Index Width = 16>
Index Eigen::FABSum< Scalar, Width >::_blockUsed {}
private

◆ _totalSum

template<typename Scalar , Index Width = 16>
KahanSum<Scalar> Eigen::FABSum< Scalar, Width >::_totalSum
private

The documentation for this class was generated from the following file: