File indexing completed on 2024-04-06 12:04:42
0001 #include "DataFormats/Math/interface/FastMath.h"
0002 namespace fastmath_details {
0003 float atanbuf_[257 * 2];
0004 double datanbuf_[513 * 2];
0005
0006 namespace {
0007
0008
0009
0010 struct Initatan {
0011 Initatan() {
0012 unsigned int ind;
0013 for (ind = 0; ind <= 256; ind++) {
0014 double v = ind / 256.0;
0015 double asinv = ::asin(v);
0016 atanbuf_[ind * 2] = ::cos(asinv);
0017 atanbuf_[ind * 2 + 1] = asinv;
0018 }
0019 for (ind = 0; ind <= 512; ind++) {
0020 double v = ind / 512.0;
0021 double asinv = ::asin(v);
0022 datanbuf_[ind * 2] = ::cos(asinv);
0023 datanbuf_[ind * 2 + 1] = asinv;
0024 }
0025 }
0026 };
0027 Initatan initAtan;
0028 }
0029 }