\hypertarget{_misc_math_8h}{\section{Core/\-Math/\-Misc\-Math.h File Reference}
\label{_misc_math_8h}\index{Core/\-Math/\-Misc\-Math.\-h@{Core/\-Math/\-Misc\-Math.\-h}}
}
{\ttfamily \#include $<$cmath$>$}\\*
{\ttfamily \#include $<$limits$>$}\\*
{\ttfamily \#include $<$Core/\-Datatypes/\-Legacy/\-Base/\-Types.\-h$>$}\\*
{\ttfamily \#include $<$boost/math/special\-\_\-functions/fpclassify.\-hpp$>$}\\*
{\ttfamily \#include $<$Core/\-Math/share.\-h$>$}\\*
{\ttfamily \#include $<$boost/test/floating\-\_\-point\-\_\-comparison.\-hpp$>$}\\*
\subsection*{Namespaces}
\begin{DoxyCompactItemize}
\item 
\hyperlink{namespace_s_c_i_run}{S\-C\-I\-Run}
\begin{DoxyCompactList}\small\item\em S\-T\-L datatypes needed. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \hyperlink{_misc_math_8h_ae71449b1cc6e6250b91f539153a7a0d3}{M\-\_\-\-P\-I}~3.\-14159265358979323846
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$typename T $>$ }\\bool \hyperlink{namespace_s_c_i_run_af879a70b1977dbc8be7d8a727ac6e877}{nonzero} (T d)
\item 
unsigned long long \hyperlink{namespace_s_c_i_run_a09d3ac180ed16fee89d46c48a1366341}{Min} (unsigned long long d1, unsigned long long d2)
\begin{DoxyCompactList}\small\item\em Faster versions of several math functions. \end{DoxyCompactList}\item 
unsigned long long \hyperlink{namespace_s_c_i_run_ada83bdf66cbf1dfc898c76f7bdc6c169}{Max} (unsigned long long d1, unsigned long long d2)
\item 
int \hyperlink{namespace_s_c_i_run_a9779da9c993b6378cf42bb9f34d2ddda}{Min} (int d1, int d2)
\item 
int \hyperlink{namespace_s_c_i_run_a62e1e587ec09e6337f6ba4ce8598e4cc}{Max} (int d1, int d2)
\item 
unsigned int \hyperlink{namespace_s_c_i_run_ab78fd3be97fca54cccc999f2258017d0}{Min} (unsigned int d1, unsigned int d2)
\item 
unsigned int \hyperlink{namespace_s_c_i_run_a4434d3692394678e9aace1045a036c94}{Max} (unsigned int d1, unsigned int d2)
\item 
long \hyperlink{namespace_s_c_i_run_a94d55b76d2ca0df7d32184909b530caf}{Min} (long d1, long d2)
\item 
long \hyperlink{namespace_s_c_i_run_a383a7bd7c175c692e823b3a2cee1c31f}{Max} (long d1, long d2)
\item 
long long \hyperlink{namespace_s_c_i_run_ae62fca2fb6e27f131014dfb2f5cc3a3a}{Min} (long long d1, long long d2)
\item 
long long \hyperlink{namespace_s_c_i_run_a9cc1f40e695aadb04a6414e60904fb78}{Max} (long long d1, long long d2)
\item 
float \hyperlink{namespace_s_c_i_run_abf04a5300b43b9dcbf71a3c36a35b0d0}{Max} (float d1, float d2)
\item 
float \hyperlink{namespace_s_c_i_run_a5bfd412091f8cbbeae8e87358b859423}{Min} (float d1, float d2)
\item 
double \hyperlink{namespace_s_c_i_run_a42105976b7334e2c344de25ed75eac25}{Max} (double d1, double d2)
\item 
double \hyperlink{namespace_s_c_i_run_a1bd2e00d500fd590b3b71818eab2ea62}{Min} (double d1, double d2)
\item 
unsigned long long \hyperlink{namespace_s_c_i_run_ae23453d3a477ac4247df2aecff3bffea}{Min} (unsigned long long d1, unsigned long long d2, unsigned long long d3)
\item 
unsigned long long \hyperlink{namespace_s_c_i_run_a4d2b80adc9980e09dbeb00af4f9c8c86}{Mid} (unsigned long long a, unsigned long long b, unsigned long long c)
\item 
unsigned long long \hyperlink{namespace_s_c_i_run_a321adba745fcfcac8670853e860e33c3}{Max} (unsigned long long d1, unsigned long long d2, unsigned long long d3)
\item 
double \hyperlink{namespace_s_c_i_run_abd246aa1dfd1ad8d0006b7b49e4e1360}{Min} (double d1, double d2, double d3)
\item 
double \hyperlink{namespace_s_c_i_run_a11dce8dd8ee730a7e6a881cf6dc5a417}{Mid} (double a, double b, double c)
\item 
double \hyperlink{namespace_s_c_i_run_a7fe3cae3563e695eff48082d4f38af04}{Max} (double d1, double d2, double d3)
\item 
int \hyperlink{namespace_s_c_i_run_ab5465f8753040cc74b21c953ad360703}{Min} (int d1, int d2, int d3)
\item 
int \hyperlink{namespace_s_c_i_run_aaba4a1ebdfa07bc2ef876dd9bef6344c}{Mid} (int a, int b, int c)
\item 
int \hyperlink{namespace_s_c_i_run_a8671edb4e625c57d96c7331c04322333}{Max} (int d1, int d2, int d3)
\item 
unsigned int \hyperlink{namespace_s_c_i_run_a730a9d4affbcf304a2b53ca03392df51}{Min} (unsigned int d1, unsigned int d2, unsigned int d3)
\item 
unsigned int \hyperlink{namespace_s_c_i_run_a2868e652251157266a9be34748606e2e}{Mid} (unsigned int a, unsigned int b, unsigned int c)
\item 
unsigned int \hyperlink{namespace_s_c_i_run_a96afc9af8ade60d2068858314233679b}{Max} (unsigned int d1, unsigned int d2, unsigned int d3)
\item 
long \hyperlink{namespace_s_c_i_run_a673ef0a74c71b1c67fc2e0c73eb48d37}{Min} (long d1, long d2, long d3)
\item 
long \hyperlink{namespace_s_c_i_run_a7c4880c3ee8ef89c1ac88336ecdf2692}{Mid} (long a, long b, long c)
\item 
long \hyperlink{namespace_s_c_i_run_a569d6e346c8f78ea59a183bb10b860e0}{Max} (long d1, long d2, long d3)
\item 
long long \hyperlink{namespace_s_c_i_run_a735d5d1f613be4ceaf173af34a6911a1}{Min} (long long d1, long long d2, long long d3)
\item 
long long \hyperlink{namespace_s_c_i_run_a0dc299ad2ef88d1c887bc925e9c416d5}{Mid} (long long a, long long b, long long c)
\item 
long long \hyperlink{namespace_s_c_i_run_a07cfddc837cd3fa15249067d78ac3abe}{Max} (long long d1, long long d2, long long d3)
\item 
double \hyperlink{namespace_s_c_i_run_a1344ef24eb00ca971b04ec368bb795ce}{Pow} (double d, double p)
\item 
double \hyperlink{namespace_s_c_i_run_a5a30fb2b5c41309509ee51f649bf24da}{Pow} (double x, unsigned int p)
\item 
double \hyperlink{namespace_s_c_i_run_a98a3d7580d7ca4cd6b362f25f818a537}{Pow} (double x, int p)
\item 
int \hyperlink{namespace_s_c_i_run_a83022929aff6ff30929418654f2847cf}{Sqrt} (int i)
\item 
double \hyperlink{namespace_s_c_i_run_a0fb322868888bf7bc19518bc3986bbc0}{Sqrt} (double d)
\item 
float \hyperlink{namespace_s_c_i_run_a74604a970c5f24b2d1e10b9038e50d62}{Sqrt} (float d)
\item 
double \hyperlink{namespace_s_c_i_run_aad8a5158a08a87e09b3b8fe3ef5f47fa}{Cbrt} (double d)
\item 
float \hyperlink{namespace_s_c_i_run_a03ceba56605ad87c36f70405b6876c83}{Cbrt} (float d)
\item 
double \hyperlink{namespace_s_c_i_run_abe6c02f36d45cd2961705d21a3189af5}{Sqr} (double x)
\item 
float \hyperlink{namespace_s_c_i_run_a90fb582d6104ae81205bb0ae1435370e}{Sqr} (float x)
\item 
double \hyperlink{namespace_s_c_i_run_afc2dead1323f38bbfe3b4a5b00ca4002}{Abs} (double d)
\item 
float \hyperlink{namespace_s_c_i_run_a26fc5a826420322bdf3449286779b75e}{Abs} (float f)
\item 
int \hyperlink{namespace_s_c_i_run_ac368db13845383bec43d365844d93d44}{Abs} (int i)
\item 
int \hyperlink{namespace_s_c_i_run_a569929864ab6fdd2c439eb54d2ad7e88}{Sign} (double d)
\item 
int \hyperlink{namespace_s_c_i_run_a6341b3a22eca0c77fa4c089339ee36c9}{Sign} (float f)
\item 
int \hyperlink{namespace_s_c_i_run_a0451121729f715b659c4ad5b492b7665}{Sign} (int i)
\item 
double \hyperlink{namespace_s_c_i_run_a03aebede16da5222d051721f2f46b961}{Clamp} (double d, double min, double \hyperlink{structmax}{max})
\item 
float \hyperlink{namespace_s_c_i_run_a037fbdbefb23bed9573f5025f952fa49}{Clamp} (float f, float min, float \hyperlink{structmax}{max})
\item 
int \hyperlink{namespace_s_c_i_run_a077775fc8475712a921187bfa0df454a}{Clamp} (int i, int min, int \hyperlink{structmax}{max})
\item 
{\footnotesize template$<$class T $>$ }\\T \hyperlink{namespace_s_c_i_run_a113fe60625a5186be5733c0e98b8143d}{Interpolate} (T d1, T d2, double weight)
\item 
{\footnotesize template$<$class T $>$ }\\T \hyperlink{namespace_s_c_i_run_aa200443da57744b9a2f545ca4fc9ba35}{Interpolate} (T d1, T d2, float weight)
\item 
int \hyperlink{namespace_s_c_i_run_a8642bf65f2acb9b9d5df5781dcdab844}{Round} (double d)
\item 
int \hyperlink{namespace_s_c_i_run_a51d56aecfef0a768a6a49fe934198c4e}{Round} (float f)
\item 
int \hyperlink{namespace_s_c_i_run_afc0f911671b12a987c4be5e51ee78bf0}{Floor} (double d)
\item 
int \hyperlink{namespace_s_c_i_run_a3766a08682db2ceee450617c31a2a4b3}{Floor} (float f)
\item 
int \hyperlink{namespace_s_c_i_run_a7126b591814455f89b6134bc6359a608}{Floor} (double d, int offset)
\item 
int \hyperlink{namespace_s_c_i_run_aa9ebd10d51b572f4c2e1105ac8e40f7f}{Floor} (float f, int offset)
\item 
int \hyperlink{namespace_s_c_i_run_aba98f25d07cad48b8e09ce6e7c2e0433}{Ceil} (double d)
\item 
int \hyperlink{namespace_s_c_i_run_a298fdf2c24b574124725358d8e0da27e}{Ceil} (float f)
\item 
int \hyperlink{namespace_s_c_i_run_afb634a1562dd501147572d6e23ca78a0}{Ceil} (double d, int offset)
\item 
int \hyperlink{namespace_s_c_i_run_aa8dd8be483369884678fdebbf6b0f658}{Ceil} (float f, int offset)
\item 
bool \hyperlink{namespace_s_c_i_run_a6a44c16903a87330ad5ff530f0415ff1}{Is\-Nan} (double val)
\item 
bool \hyperlink{namespace_s_c_i_run_ac0091fa736f23130d9a3deacdf794ba6}{Is\-Finite} (double val)
\item 
bool \hyperlink{namespace_s_c_i_run_adfc80e6b648065f35252d954581ef315}{Is\-Infinite} (double val)
\item 
bool \hyperlink{namespace_s_c_i_run_a6f8e0448a4676b3f1630282971aa93ab}{Is\-Power\-Of2} (unsigned int n)
\item 
bool \hyperlink{namespace_s_c_i_run_a31797cfad45c7ab809f2cf43d2e8cc97}{is\-\_\-integral\-\_\-value} (double x)
\item 
unsigned int \hyperlink{namespace_s_c_i_run_a3af045f687864c7752acaea309b5c5f4}{Pow2} (const unsigned int dim)
\item 
unsigned int \hyperlink{namespace_s_c_i_run_a2a2827195f0e44c5d6419c03e21eb371}{Largest\-Power\-Of2} (const unsigned int dim)
\item 
unsigned int \hyperlink{namespace_s_c_i_run_ab35844020cf2800710b7662da966b925}{Log2} (const unsigned int dim)
\item 
void \hyperlink{namespace_s_c_i_run_a7013a559d1460cc6e1da7a48d18c2dbb}{find\-Factors\-Near\-Root} (const int value, int \&factor1, int \&factor2)
\item 
double \hyperlink{namespace_s_c_i_run_af74a57f106bb278d0aadf496b7bc57a5}{Cot} (double d)
\item 
double \hyperlink{namespace_s_c_i_run_ab7ad55159a2bef57418ad5a31d9d8f97}{Dto\-R} (double d)
\item 
double \hyperlink{namespace_s_c_i_run_ad7b89486fdc49f768d8b38b5eeaa653a}{Rto\-D} (double r)
\item 
float \hyperlink{namespace_s_c_i_run_aa70a5be6348e8a3fbaf7dead33dc06fe}{Dto\-R} (float d)
\item 
float \hyperlink{namespace_s_c_i_run_a5e19a52b7458c199c2a3312655380f3e}{Rto\-D} (float r)
\end{DoxyCompactItemize}


\subsection{Macro Definition Documentation}
\hypertarget{_misc_math_8h_ae71449b1cc6e6250b91f539153a7a0d3}{\index{Misc\-Math.\-h@{Misc\-Math.\-h}!M\-\_\-\-P\-I@{M\-\_\-\-P\-I}}
\index{M\-\_\-\-P\-I@{M\-\_\-\-P\-I}!MiscMath.h@{Misc\-Math.\-h}}
\subsubsection[{M\-\_\-\-P\-I}]{\setlength{\rightskip}{0pt plus 5cm}\#define M\-\_\-\-P\-I~3.\-14159265358979323846}}\label{_misc_math_8h_ae71449b1cc6e6250b91f539153a7a0d3}
