35 KahanSum(KahanSum &&) =
default;
36 KahanSum(
const KahanSum &) =
delete;
40 static_assert(std::is_floating_point<T>::value,
"Kahan sum makes sense only on floating point numbers");
47 std::shared_ptr<Result_t> GetResultPtr()
const {
return fResultSum; }
69 for (
int i = 0; i < fNSlots; ++i) {
75 std::string GetActionName() {
return "KahanSum"; }
84 auto dd =
d.Define(
"x",
"(rdfentry_ %2 == 0) ? 0.00000001 : 100000000.");
86 auto ptr = std::make_shared<double>();
92 std::cout << std::setprecision(24) <<
"Kahan: " << *
kahanResult <<
" Classical: " << *
plainResult << std::endl;
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
Base class for action helpers, see RInterface::Book() for more information.
ROOT's RDataFrame offers a modern, high-level interface for analysis of data stored in TTree ,...
A simple, robust and fast interface to read values from ROOT columnar datasets such as TTree,...
CPYCPPYY_EXTERN bool Exec(const std::string &cmd)
void EnableImplicitMT(UInt_t numthreads=0)
Enable ROOT's implicit multi-threading for all objects and methods that provide an internal paralleli...
Bool_t IsImplicitMTEnabled()
Returns true if the implicit multi-threading in ROOT is enabled.
UInt_t GetThreadPoolSize()
Returns the size of ROOT's thread pool.
void Initialize(Bool_t useTMVAStyle=kTRUE)
static uint64_t sum(uint64_t i)