ar39.h
Go to the documentation of this file.
1 /** Ar39 spectrum for C++ testing. For real app these arrays should
2  * go into a Jsonnet file.
3  */
4 
5 #ifndef WIRECELLGEN_TEST_AR39
6 #define WIRECELLGEN_TEST_AR39
7 
8 #include <vector>
9 
10 /* Take from arXiv:1705.05726v1
11 
12  Digitize with "engauge", then run ipython:
13 
14  import numpy, csv
15  dat = list(csv.reader(open("ar39.csv")))
16  e = numpy.asarray([float(d[0]) for d in dat[1:]])
17  p = numpy.asarray([float(d[1]) for d in dat[1:]])
18  ereg = numpy.linspace(0,1,101)
19  preg = numpy.interp(ereg, e, p)
20  pregn = preg/numpy.sum(preg)
21 
22  ereg
23  preg
24 
25  # copy-paste
26 
27  If test_blipsource is run it will spit out some JSON config for the
28  PDF in terms of number of electrons given some simplifying
29  assumptions.
30 
31  */
32 
33 namespace WireCell { namespace Gen { namespace Test {
34 
35 const std::vector<double> ar39_mev{
36  0. , 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08,
37  0.09, 0.1 , 0.11, 0.12, 0.13, 0.14, 0.15, 0.16, 0.17,
38  0.18, 0.19, 0.2 , 0.21, 0.22, 0.23, 0.24, 0.25, 0.26,
39  0.27, 0.28, 0.29, 0.3 , 0.31, 0.32, 0.33, 0.34, 0.35,
40  0.36, 0.37, 0.38, 0.39, 0.4 , 0.41, 0.42, 0.43, 0.44,
41  0.45, 0.46, 0.47, 0.48, 0.49, 0.5 , 0.51, 0.52, 0.53,
42  0.54, 0.55, 0.56, 0.57, 0.58, 0.59, 0.6 , 0.61, 0.62,
43  0.63, 0.64, 0.65, 0.66, 0.67, 0.68, 0.69, 0.7 , 0.71,
44  0.72, 0.73, 0.74, 0.75, 0.76, 0.77, 0.78, 0.79, 0.8 ,
45  0.81, 0.82, 0.83, 0.84, 0.85, 0.86, 0.87, 0.88, 0.89,
46  0.9 , 0.91, 0.92, 0.93, 0.94, 0.95, 0.96, 0.97, 0.98,
47  0.99, 1.
48 };
49 
50 const std::vector<double> ar39_pdf{
51  0.01947907, 0.01965097, 0.02009827, 0.02073114, 0.02122578,
52  0.0217205 , 0.02220004, 0.02266917, 0.02299656, 0.02337743,
53  0.02365564, 0.02388039, 0.02412927, 0.02432756, 0.0244995 ,
54  0.02463332, 0.02480227, 0.0248433 , 0.02489306, 0.02489379,
55  0.02484847, 0.02479329, 0.02466986, 0.02449811, 0.02432513,
56  0.02403747, 0.02370043, 0.02337367, 0.02301038, 0.02256582,
57  0.02205115, 0.02145659, 0.0208491 , 0.02014801, 0.01940368,
58  0.01863213, 0.01790748, 0.01701706, 0.01611073, 0.01509436,
59  0.01407524, 0.01303835, 0.01189252, 0.01077648, 0.00969766,
60  0.00867891, 0.00744269, 0.00638136, 0.00538706, 0.00420577,
61  0.00333149, 0.00247285, 0.00170846, 0.00106269, 0.00042031,
62  0.00026583, 0.00026583, 0.00026583, 0.00026583, 0.00026583,
63  0.00026583, 0.00026583, 0.00026583, 0.00026583, 0.00026583,
64  0.00026583, 0.00026583, 0.00026583, 0.00026583, 0.00026583,
65  0.00026583, 0.00026583, 0.00026583, 0.00026583, 0.00026583,
66  0.00026583, 0.00026583, 0.00026583, 0.00026583, 0.00026583,
67  0.00026583, 0.00026583, 0.00026583, 0.00026583, 0.00026583,
68  0.00026583, 0.00026583, 0.00026583, 0.00026583, 0.00026583,
69  0.00026583, 0.00026583, 0.00026583, 0.00026583, 0.00026583,
70  0.00026583, 0.00026583, 0.00026583, 0.00026583, 0.00026583,
71  0.00026583
72 };
73 }}}
74 #endif
const std::vector< double > ar39_pdf
Definition: ar39.h:50
A Test class.
Definition: class.h:3
Definition: Main.h:22
const std::vector< double > ar39_mev
Definition: ar39.h:35