\hypertarget{kblib__stats_8h}{}\section{kblib\+\_\+stats.\+h File Reference} \label{kblib__stats_8h}\index{kblib\+\_\+stats.\+h@{kblib\+\_\+stats.\+h}} {\ttfamily \#include $<$array$>$}\newline {\ttfamily \#include $<$limits$>$}\newline {\ttfamily \#include $<$numeric$>$}\newline {\ttfamily \#include $<$random$>$}\newline {\ttfamily \#include \char`\"{}kblib\+\_\+tdecl.\+h\char`\"{}}\newline Include dependency graph for kblib\+\_\+stats.\+h\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{kblib__stats_8h__incl} \end{center} \end{figure} This graph shows which files directly or indirectly include this file\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=152pt]{kblib__stats_8h__dep__incl} \end{center} \end{figure} \subsection*{Classes} \begin{DoxyCompactItemize} \item struct \hyperlink{structkblib_1_1nums_1_1max__t}{kblib\+::nums\+::max\+\_\+t} \begin{DoxyCompactList}\small\item\em Shorthand for \hyperlink{namespacekblib_1_1nums_a5dfba45ed83d5b0ad8dfa58f3c65fde4}{std\+::numeric\+\_\+limits\+::max()} \end{DoxyCompactList}\item struct \hyperlink{structkblib_1_1nums_1_1min__t}{kblib\+::nums\+::min\+\_\+t} \begin{DoxyCompactList}\small\item\em Shorthand for \hyperlink{namespacekblib_1_1nums_ac32e803eb269c53457dd7aa5bce6b5fb}{std\+::numeric\+\_\+limits\+::min()} \end{DoxyCompactList}\end{DoxyCompactItemize} \subsection*{Namespaces} \begin{DoxyCompactItemize} \item \hyperlink{namespacekblib}{kblib} \item \hyperlink{namespacekblib_1_1nums}{kblib\+::nums} \end{DoxyCompactItemize} \subsection*{Macros} \begin{DoxyCompactItemize} \item \#define \hyperlink{kblib__stats_8h_a607cffc585fe3bfcb06b63be2948de4a}{K\+B\+L\+I\+B\+\_\+\+U\+N\+U\+S\+ED} \end{DoxyCompactItemize} \subsection*{Functions} \begin{DoxyCompactItemize} \item {\footnotesize template$<$typename Array , typename Random\+Generator , typename freqtype = double$>$ }\\auto \hyperlink{namespacekblib_acaea72be9d62f20c0d3b040150534c8c}{kblib\+::choose\+Categorical} (Array \&\&cats, Random\+Generator \&r) \begin{DoxyCompactList}\small\item\em Given a categorical distribution cats, selects one category. \end{DoxyCompactList}\item unsigned \hyperlink{namespacekblib_a57b75574b4ecd7e440c79e1cff761906}{kblib\+::fibonacci} (unsigned n) \begin{DoxyCompactList}\small\item\em Semi-\/efficient fibonacci implementation (constant for small n) \end{DoxyCompactList}\item {\footnotesize template$<$typename Input\+It , typename T $>$ }\\constexpr auto \hyperlink{namespacekblib_a7011b96c811de90c0782d9c0db021514}{kblib\+::accumulate} (Input\+It first, Input\+It last, T init) -\/$>$ std\+::decay\+\_\+t$<$ decltype($\ast$first)$>$ \begin{DoxyCompactList}\small\item\em A constexpr version of std\+::accumulate. \end{DoxyCompactList}\item {\footnotesize template$<$class Input\+It , class T , class Binary\+Operation $>$ }\\constexpr T \hyperlink{namespacekblib_a1584ffae81a341cb6767616ff99f96e8}{kblib\+::accumulate} (Input\+It first, Input\+It last, T init, Binary\+Operation op) \begin{DoxyCompactList}\small\item\em A constexpr version of std\+::accumulate. \end{DoxyCompactList}\item {\footnotesize template$<$typename Input\+It $>$ }\\constexpr auto \hyperlink{namespacekblib_ab0380312efcdc59f34b028e698c265dc}{kblib\+::sum} (Input\+It first, Input\+It last) -\/$>$ std\+::decay\+\_\+t$<$ decltype($\ast$first)$>$ \begin{DoxyCompactList}\small\item\em Sum a numeric range. \end{DoxyCompactList}\item {\footnotesize template$<$typename T , typename F $>$ }\\constexpr T \hyperlink{namespacekblib_a33f5b20fe198c0c082b2880e8d301f0c}{kblib\+::quantize\+Step} (F min, F delta, F val) \begin{DoxyCompactList}\small\item\em Quantize a real-\/valued value into a discrete integer. \end{DoxyCompactList}\item {\footnotesize template$<$typename T , typename F $>$ }\\constexpr T \hyperlink{namespacekblib_a15252aaff708d4d46235bd7fbb7bea9a}{kblib\+::quantize\+Range} (F min, F max, F val) \begin{DoxyCompactList}\small\item\em Quantize a real-\/valued value into a discrete integer. \end{DoxyCompactList}\end{DoxyCompactItemize} \subsection*{Variables} \begin{DoxyCompactItemize} \item \hyperlink{kblib__stats_8h_a607cffc585fe3bfcb06b63be2948de4a}{K\+B\+L\+I\+B\+\_\+\+U\+N\+U\+S\+ED} constexpr struct \hyperlink{structkblib_1_1nums_1_1max__t}{kblib\+::nums\+::max\+\_\+t} \hyperlink{namespacekblib_1_1nums_a5dfba45ed83d5b0ad8dfa58f3c65fde4}{kblib\+::nums\+::max} \item \hyperlink{kblib__stats_8h_a607cffc585fe3bfcb06b63be2948de4a}{K\+B\+L\+I\+B\+\_\+\+U\+N\+U\+S\+ED} constexpr struct \hyperlink{structkblib_1_1nums_1_1min__t}{kblib\+::nums\+::min\+\_\+t} \hyperlink{namespacekblib_1_1nums_ac32e803eb269c53457dd7aa5bce6b5fb}{kblib\+::nums\+::min} \end{DoxyCompactItemize} \subsection{Macro Definition Documentation} \mbox{\Hypertarget{kblib__stats_8h_a607cffc585fe3bfcb06b63be2948de4a}\label{kblib__stats_8h_a607cffc585fe3bfcb06b63be2948de4a}} \index{kblib\+\_\+stats.\+h@{kblib\+\_\+stats.\+h}!K\+B\+L\+I\+B\+\_\+\+U\+N\+U\+S\+ED@{K\+B\+L\+I\+B\+\_\+\+U\+N\+U\+S\+ED}} \index{K\+B\+L\+I\+B\+\_\+\+U\+N\+U\+S\+ED@{K\+B\+L\+I\+B\+\_\+\+U\+N\+U\+S\+ED}!kblib\+\_\+stats.\+h@{kblib\+\_\+stats.\+h}} \subsubsection{\texorpdfstring{K\+B\+L\+I\+B\+\_\+\+U\+N\+U\+S\+ED}{KBLIB\_UNUSED}} {\footnotesize\ttfamily \#define K\+B\+L\+I\+B\+\_\+\+U\+N\+U\+S\+ED} Definition at line 14 of file kblib\+\_\+stats.\+h.