Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
DataFormats
Math
src
FastMath.cc
Go to the documentation of this file.
1
#include "
DataFormats/Math/interface/FastMath.h
"
2
namespace
fastmath_details {
3
float
atanbuf_
[257 * 2];
4
double
datanbuf_
[513 * 2];
5
6
namespace
{
7
// ====================================================================
8
// arctan initialization
9
// =====================================================================
10
struct
Initatan {
11
Initatan() {
12
unsigned
int
ind;
13
for
(ind = 0; ind <= 256; ind++) {
14
double
v
= ind / 256.0;
15
double
asinv = ::asin(v);
16
atanbuf_
[ind * 2 ] =
::cos
(asinv);
17
atanbuf_
[ind * 2 + 1] = asinv;
18
}
19
for
(ind = 0; ind <= 512; ind++) {
20
double
v
= ind / 512.0;
21
double
asinv = ::asin(v);
22
datanbuf_
[ind * 2 ] =
::cos
(asinv);
23
datanbuf_
[ind * 2 + 1] = asinv;
24
}
25
}
26
};
27
static
Initatan initAtan;
28
}
29
}
fastmath_details::atanbuf_
float atanbuf_[257 *2]
Definition:
FastMath.cc:3
funct::cos
Cos< T >::type cos(const T &t)
Definition:
Cos.h:22
FastMath.h
fastmath_details::datanbuf_
double datanbuf_[513 *2]
Definition:
FastMath.cc:4
v
mathSSE::Vec4< T > v
Definition:
newBasic3DVector.h:354
Generated for CMSSW Reference Manual by
1.8.5