-
Notifications
You must be signed in to change notification settings - Fork 1
/
TargetGen.hxx
87 lines (83 loc) · 4.39 KB
/
TargetGen.hxx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#ifndef TargetGen_H
#define TargetGen_H
#include "Particle.hxx"
#include "CustomRand.hxx"
#include "TRandom2.h"
class TargetGen
{
private:
CustomRand *Rand;
double mass;
Particle * TargetParticle;
double fProb[300] = {
6.03456, 6.02429, 6.01155, 5.99636, 5.97873,
5.95869, 5.93626, 5.91147, 5.88435, 5.85493,
5.82325, 5.78935, 5.75326, 5.71504, 5.67472,
5.63235, 5.58799, 5.54169, 5.4935, 5.44347,
5.39167, 5.33816, 5.28299, 5.22623, 5.16794,
5.10818, 5.04703, 4.98455, 4.92081, 4.85588,
4.78982, 4.71692, 4.63621, 4.55583, 4.47582,
4.39621, 4.31702, 4.23828, 4.16002, 4.08227,
4.00506, 3.9284, 3.85233, 3.77686, 3.70202,
3.62783, 3.55432, 3.48149, 3.40937, 3.33798,
3.26733, 3.19745, 3.12834, 3.06002, 2.99251,
2.92581, 2.85995, 2.79493, 2.73075, 2.66744,
2.605, 2.54344, 2.48276, 2.41728, 2.35244,
2.28922, 2.22759, 2.16751, 2.10895, 2.05186,
1.99621, 1.94198, 1.88913, 1.83762, 1.78743,
1.73851, 1.69086, 1.64442, 1.59918, 1.55511,
1.51217, 1.47035, 1.42961, 1.38993, 1.35128,
1.31364, 1.27698, 1.24129, 1.20653, 1.17269,
1.13973, 1.10765, 1.07642, 1.04601, 1.01626,
0.986934, 0.958443, 0.930759, 0.903861, 0.877727,
0.852335, 0.827665, 0.803696, 0.780409, 0.757785,
0.735806, 0.714452, 0.693708, 0.673555, 0.653978,
0.63496, 0.616485, 0.598538, 0.581105, 0.56417,
0.547721, 0.531743, 0.516223, 0.501148, 0.486506,
0.472284, 0.45847, 0.445054, 0.432024, 0.419368,
0.407077, 0.395125, 0.383513, 0.372237, 0.361289,
0.350658, 0.340336, 0.330314, 0.320583, 0.311135,
0.301962, 0.293056, 0.284409, 0.276014, 0.267863,
0.25995, 0.252268, 0.244809, 0.237569, 0.230539,
0.223715, 0.217091, 0.21066, 0.204417, 0.198357,
0.192474, 0.186763, 0.181219, 0.175838, 0.170615,
0.165545, 0.160623, 0.155843, 0.151185, 0.146666,
0.142282, 0.138028, 0.133902, 0.129898, 0.126013,
0.122245, 0.118588, 0.115041, 0.111599, 0.108261,
0.105021, 0.101879, 0.0988298, 0.0958719, 0.0930022,
0.0902182, 0.0875173, 0.084897, 0.0823549, 0.0798886,
0.0774961, 0.0751749, 0.0729231, 0.0707385, 0.0686192,
0.0665631, 0.0645685, 0.0626335, 0.0607563, 0.0589545,
0.057219, 0.0555322, 0.053893, 0.0523001, 0.0507522,
0.0492481, 0.0477867, 0.0463667, 0.0449872, 0.0436468,
0.0423448, 0.0410798, 0.0398511, 0.0386576, 0.0374982,
0.0363722, 0.0352785, 0.0342164, 0.0331849, 0.0321831,
0.0312104, 0.0302658, 0.0293486, 0.0284581, 0.0275935,
0.026754, 0.0259391, 0.0251479, 0.0243799, 0.0236344,
0.0229107, 0.0221901, 0.0214923, 0.0208167, 0.0201626,
0.0195293, 0.0189162, 0.0183226, 0.0177478, 0.0171913,
0.0166525, 0.0161308, 0.0156257, 0.0151366, 0.0146629,
0.0142044, 0.0137603, 0.0133303, 0.0129139, 0.0125107,
0.0121203, 0.0117421, 0.011376, 0.0110214, 0.010678,
0.0103455, 0.0100234, 0.00971153, 0.00940947, 0.00911693,
0.00883361, 0.0085592, 0.00829385, 0.00803735, 0.00778883,
0.00754804, 0.00731474, 0.0070887, 0.00686967, 0.00665746,
0.00645184, 0.00625261, 0.00605957, 0.00587252, 0.00569128,
0.00551567, 0.00534551, 0.00518063, 0.00502086, 0.00486605,
0.00471604, 0.00457069, 0.00442984, 0.00429336, 0.0041611,
0.00403295, 0.00390877, 0.00378843, 0.00367182, 0.00355882,
0.00344932, 0.00334321, 0.00324038, 0.00314073, 0.00304505,
0.0029524, 0.00286252, 0.00277533, 0.00269076, 0.00260872,
0.00252913, 0.00245194, 0.00237706, 0.00230444, 0.00223399,
0.00216566, 0.00209939, 0.00203512, 0.00197277, 0.00191231 };
double FermiMomentum();
TRandom2* fRandom;
double fMom, fProton_Rand_Mom_Col, fProton_Rand_Mom_Col_Prob, f3He_Value;
int fProton_Mom_Int;
bool kFermi;
public:
bool fermi;
Particle* GetParticle();
TargetGen(double mass_in, bool fermi_in);
};
#endif