Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
DataFormats
Math
interface
approx_erf.h
Go to the documentation of this file.
1
#ifndef APPROX_ERF_H
2
#define APPROX_ERF_H
3
#include "
DataFormats/Math/interface/approx_exp.h
"
4
5
inline
6
float
approx_erf
(
float
x
) {
7
auto
xx =
std::min
(
std::abs
(x),5.
f
);
8
xx*=xx;
9
return
std::copysign(
std::sqrt
(1.
f
- unsafe_expf<4>(-xx*(1.
f
+0.2733
f
/(1.
f
+0.147
f
*xx)) )),x);
10
// return std::sqrt(1.f- std::exp(-x*x*(1.f+0.2733f/(1.f+0.147f*x*x)) ));
11
}
12
13
14
#endif
approx_erf
float approx_erf(float x)
Definition:
approx_erf.h:6
x
T x() const
Cartesian x coordinate.
Definition:
Basic3DVectorLD.h:127
mathSSE::sqrt
T sqrt(T t)
Definition:
SSEVec.h:48
funct::abs
Abs< T >::type abs(const T &t)
Definition:
Abs.h:22
f
double f[11][100]
Definition:
MuScleFitUtils.cc:78
min
T min(T a, T b)
Definition:
MathUtil.h:58
approx_exp.h
Generated for CMSSW Reference Manual by
1.8.5