\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.

