MADNESS 0.10.1
Classes | Namespaces | Functions
kahan_accumulator.h File Reference
#include <iosfwd>
#include <type_traits>
Include dependency graph for kahan_accumulator.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  madness::KahanAccumulator< Complex, std::enable_if_t<!std::is_floating_point_v< Complex > > >
 implements Kahan summation for complex numbers More...
 
struct  madness::KahanAccumulator< Real, std::enable_if_t< std::is_floating_point_v< Real > > >
 implements Kahan summation for real numbers More...
 

Namespaces

namespace  madness
 Namespace for all elements and tools of MADNESS.
 

Functions

template<typename Real1 , typename Real2 >
auto madness::operator+ (KahanAccumulator< Real1 > v1, KahanAccumulator< Real2 > v2)
 
template<typename Real1 , typename Real2 >
auto madness::operator+ (KahanAccumulator< Real1 > v1, Real2 v2)
 
template<typename Real1 , typename Real2 >
auto madness::operator+ (Real2 v2, KahanAccumulator< Real1 > v1)
 
template<typename Real1 , typename Real2 >
auto madness::operator- (KahanAccumulator< Real1 > v1, KahanAccumulator< Real2 > v2)
 
template<typename Real1 , typename Real2 >
auto madness::operator- (KahanAccumulator< Real1 > v1, Real2 v2)
 
template<typename Real1 , typename Real2 >
auto madness::operator- (Real2 v2, KahanAccumulator< Real1 > v1)
 
template<typename Char , typename Real >
std::basic_ostream< Char > & madness::operator<< (std::basic_ostream< Char > &os, const KahanAccumulator< Real > &v)