Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
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
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.2733
f
/ (1.
f
+ 0.147
f
* 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
mathSSE::sqrt
T sqrt(T t)
Definition:
SSEVec.h:19
funct::abs
Abs< T >::type abs(const T &t)
Definition:
Abs.h:22
gpuClustering::x
uint16_t const *__restrict__ x
Definition:
gpuClustering.h:39
min
T min(T a, T b)
Definition:
MathUtil.h:58
approx_erf
constexpr float approx_erf(float x)
Definition:
approx_erf.h:5
approx_exp.h
validate-o2o-wbm.f
tuple f
Definition:
validate-o2o-wbm.py:27
Generated for CMSSW Reference Manual by
1.8.5