Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:15:07

0001 #ifndef TargetGen_H
0002 #define TargetGen_H
0003 
0004 #include "Particle.hxx"
0005 #include "CustomRand.hxx"
0006 #include "TRandom2.h"
0007 
0008 class TargetGen
0009 {
0010 private:
0011     CustomRand *Rand;
0012     double mass;
0013     Particle * TargetParticle;
0014     double fProb[300] = {
0015         6.03456,    6.02429,    6.01155,    5.99636,    5.97873,
0016         5.95869,    5.93626,    5.91147,    5.88435,    5.85493,
0017         5.82325,    5.78935,    5.75326,    5.71504,    5.67472,
0018         5.63235,    5.58799,    5.54169,     5.4935,    5.44347,
0019         5.39167,    5.33816,    5.28299,    5.22623,    5.16794,
0020         5.10818,    5.04703,    4.98455,    4.92081,    4.85588,
0021         4.78982,    4.71692,    4.63621,    4.55583,    4.47582,
0022         4.39621,    4.31702,    4.23828,    4.16002,    4.08227,
0023         4.00506,     3.9284,    3.85233,    3.77686,    3.70202,
0024         3.62783,    3.55432,    3.48149,    3.40937,    3.33798,
0025         3.26733,    3.19745,    3.12834,    3.06002,    2.99251,
0026         2.92581,    2.85995,    2.79493,    2.73075,    2.66744,
0027         2.605,      2.54344,    2.48276,    2.41728,    2.35244,
0028         2.28922,    2.22759,    2.16751,    2.10895,    2.05186,
0029         1.99621,    1.94198,    1.88913,    1.83762,    1.78743,
0030         1.73851,    1.69086,    1.64442,    1.59918,    1.55511,
0031         1.51217,    1.47035,    1.42961,    1.38993,    1.35128,
0032         1.31364,    1.27698,    1.24129,    1.20653,    1.17269,
0033         1.13973,    1.10765,    1.07642,    1.04601,    1.01626,
0034         0.986934,   0.958443,   0.930759,   0.903861,   0.877727,
0035         0.852335,   0.827665,   0.803696,   0.780409,   0.757785,
0036         0.735806,   0.714452,   0.693708,   0.673555,   0.653978,
0037         0.63496,    0.616485,   0.598538,   0.581105,   0.56417,
0038         0.547721,   0.531743,   0.516223,   0.501148,   0.486506,
0039         0.472284,   0.45847,    0.445054,   0.432024,   0.419368,
0040         0.407077,   0.395125,   0.383513,   0.372237,   0.361289,
0041         0.350658,   0.340336,   0.330314,   0.320583,   0.311135,
0042         0.301962,   0.293056,   0.284409,   0.276014,   0.267863,
0043         0.25995,    0.252268,   0.244809,   0.237569,   0.230539,
0044         0.223715,   0.217091,   0.21066,    0.204417,   0.198357,
0045         0.192474,   0.186763,   0.181219,   0.175838,   0.170615,
0046         0.165545,   0.160623,   0.155843,   0.151185,   0.146666,
0047         0.142282,   0.138028,   0.133902,   0.129898,   0.126013,
0048         0.122245,   0.118588,   0.115041,   0.111599,   0.108261,
0049         0.105021,   0.101879,   0.0988298,  0.0958719,  0.0930022,
0050         0.0902182,  0.0875173,  0.084897,   0.0823549,  0.0798886,
0051         0.0774961,  0.0751749,  0.0729231,  0.0707385,  0.0686192,
0052         0.0665631,  0.0645685,  0.0626335,  0.0607563,  0.0589545,
0053         0.057219,   0.0555322,  0.053893,   0.0523001,  0.0507522,
0054         0.0492481,  0.0477867,  0.0463667,  0.0449872,  0.0436468,
0055         0.0423448,  0.0410798,  0.0398511,  0.0386576,  0.0374982,
0056         0.0363722,  0.0352785,  0.0342164,  0.0331849,  0.0321831,
0057         0.0312104,  0.0302658,  0.0293486,  0.0284581,  0.0275935,
0058         0.026754,   0.0259391,  0.0251479,  0.0243799,  0.0236344,
0059         0.0229107,  0.0221901,  0.0214923,  0.0208167,  0.0201626,
0060         0.0195293,  0.0189162,  0.0183226,  0.0177478,  0.0171913,
0061         0.0166525,  0.0161308,  0.0156257,  0.0151366,  0.0146629,
0062         0.0142044,  0.0137603,  0.0133303,  0.0129139,  0.0125107,
0063         0.0121203,  0.0117421,  0.011376,   0.0110214,  0.010678,
0064         0.0103455,  0.0100234,  0.00971153, 0.00940947, 0.00911693,
0065         0.00883361, 0.0085592,  0.00829385, 0.00803735, 0.00778883,
0066         0.00754804, 0.00731474, 0.0070887,  0.00686967, 0.00665746,
0067         0.00645184, 0.00625261, 0.00605957, 0.00587252, 0.00569128,
0068         0.00551567, 0.00534551, 0.00518063, 0.00502086, 0.00486605,
0069         0.00471604, 0.00457069, 0.00442984, 0.00429336,  0.0041611,
0070         0.00403295, 0.00390877, 0.00378843, 0.00367182, 0.00355882,
0071         0.00344932, 0.00334321, 0.00324038, 0.00314073, 0.00304505,
0072         0.0029524,  0.00286252, 0.00277533, 0.00269076, 0.00260872,
0073         0.00252913, 0.00245194, 0.00237706, 0.00230444, 0.00223399,
0074         0.00216566, 0.00209939, 0.00203512, 0.00197277, 0.00191231 };
0075     double FermiMomentum();
0076     TRandom2* fRandom;
0077     double fMom, fProton_Rand_Mom_Col, fProton_Rand_Mom_Col_Prob, f3He_Value;
0078     int fProton_Mom_Int;
0079     bool kFermi;
0080 public:
0081     bool fermi;
0082     Particle* GetParticle();
0083 
0084     TargetGen(double mass_in, bool fermi_in);
0085 };
0086 
0087 #endif