CMS 3D CMS Logo

approx_erf.h
Go to the documentation of this file.
1 #ifndef APPROX_ERF_H
2 #define APPROX_ERF_H
4 
5 constexpr float approx_erf(float x) {
6  auto xx = std::min(std::abs(x), 5.f);
7  xx *= xx;
8  return std::copysign(std::sqrt(1.f - unsafe_expf<4>(-xx * (1.f + 0.2733f / (1.f + 0.147f * xx)))), x);
9  // return std::sqrt(1.f- std::exp(-x*x*(1.f+0.2733f/(1.f+0.147f*x*x)) ));
10 }
11 
12 #endif
f
double f[11][100]
Definition: MuScleFitUtils.cc:78
min
T min(T a, T b)
Definition: MathUtil.h:58
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
approx_erf
constexpr float approx_erf(float x)
Definition: approx_erf.h:5
genVertex_cff.x
x
Definition: genVertex_cff.py:12
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
approx_exp.h
geometryCSVtoXML.xx
xx
Definition: geometryCSVtoXML.py:19