CMS 3D CMS Logo

FastMath.cc
Go to the documentation of this file.
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  Initatan initAtan;
28  } // namespace
29 } // namespace fastmath_details
findQualityFiles.v
v
Definition: findQualityFiles.py:179
fastmath_details::atanbuf_
float atanbuf_[257 *2]
Definition: FastMath.cc:3
FastMath.h
funct::cos
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
fastmath_details
Definition: FastMath.h:26
fastmath_details::datanbuf_
double datanbuf_[513 *2]
Definition: FastMath.cc:4