Statistical scientific programming OO patterns: accumulators
summary
Company code bases a C++ scientific core engine that processes clinical trial datasets and replaces ad hoc loops with boost accumulator or custom accumulator types. The claim is a concrete one: swapping in a streaming stable variance accumulator (Welford-like two-moment state) fixes catastrophic cancellation that makes naive two-pass or direct formula yield negative or zero results on large numbers, preserves online access to mean/variance, and improves testability by separating iteration from aggregation.
AI-written summary · about
chapters (9)
- 0:00Intro
- 0:17Clinical data
- 0:45Medical records
- 1:49Scientific engine
- 3:03Sum example
- 3:54Numerical errors
- 4:45Stable formulas
- 5:23Simple formula
- 6:00Thank you
related talks
58mProgramming challenges in converting R to C++
01h 22mCostless Software Abstractions for Parallel Architectures
50mThinking Functionally in C++
38mEngineering Software Integral Types
01h 07mWriting Data Parallel Algorithms on GPUs
01h 03mWriting sustainable software. The how and the what!
25mApplication of C++ in Computational Cancer Modeling
01h 02mStandardizing a linear algebra library
