28 void Picky(
double *y_cumulative,
int NPROB_MAX,
double rnd,
double& y);
30 static const int NPROB_MAX=100;
33 double em_secondaries_max;
34 double had_secondaries_max;
37 double dsdy_muon_brems[7][NPROB_MAX];
38 double dsdy_muon_epair[7][NPROB_MAX];
39 double dsdy_muon_pn[7][NPROB_MAX];
41 double y_muon_brems[7][NPROB_MAX];
42 double y_muon_epair[7][NPROB_MAX];
43 double y_muon_pn[7][NPROB_MAX];
45 vector<double> vy_muon_brems[7];
47 vector<double> vy_muon_epair[7];
48 vector<double> vy_muon_pn[7];
50 double y_cumulative_muon_brems[7][NPROB_MAX];
51 double y_cumulative_muon_epair[7][NPROB_MAX];
52 double y_cumulative_muon_pn[7][NPROB_MAX];
54 double int_muon_brems[7];
56 double int_muon_epair[7];
57 double int_muon_pn[7];
59 double max_muon_brems;
60 double max_muon_epair;
63 double min_muon_brems;
64 double min_muon_epair;
67 double dsdy_tauon_brems[7][NPROB_MAX];
68 double dsdy_tauon_epair[7][NPROB_MAX];
69 double dsdy_tauon_pn[7][NPROB_MAX];
70 double dsdy_tauon_hadrdecay[7][NPROB_MAX];
71 double dsdy_tauon_edecay[7][NPROB_MAX];
72 double dsdy_tauon_mudecay[7][NPROB_MAX];
74 double y_tauon_brems[7][NPROB_MAX];
75 double y_tauon_epair[7][NPROB_MAX];
76 double y_tauon_pn[7][NPROB_MAX];
77 double y_tauon_hadrdecay[7][NPROB_MAX];
78 double y_tauon_edecay[7][NPROB_MAX];
79 double y_tauon_mudecay[7][NPROB_MAX];
81 double y_cumulative_tauon_brems[7][NPROB_MAX];
82 double y_cumulative_tauon_epair[7][NPROB_MAX];
83 double y_cumulative_tauon_pn[7][NPROB_MAX];
84 double y_cumulative_tauon_hadrdecay[7][NPROB_MAX];
85 double y_cumulative_tauon_edecay[7][NPROB_MAX];
86 double y_cumulative_tauon_mudecay[7][NPROB_MAX];
88 vector<double> vy_tauon_brems[7];
90 vector<double> vy_tauon_epair[7];
91 vector<double> vy_tauon_pn[7];
92 vector<double> vy_tauon_hadrdecay[7];
93 vector<double> vy_tauon_edecay[7];
94 vector<double> vy_tauon_mudecay[7];
96 double int_tauon_brems[7];
97 double int_tauon_epair[7];
98 double int_tauon_pn[7];
99 double int_tauon_hadrdecay[7];
100 double int_tauon_edecay[7];
101 double int_tauon_mudecay[7];
103 double max_tauon_brems;
104 double max_tauon_epair;
106 double max_tauon_hadrdecay;
107 double max_tauon_edecay;
108 double max_tauon_mudecay;
110 double min_tauon_brems;
111 double min_tauon_epair;
113 double min_tauon_hadrdecay;
114 double min_tauon_edecay;
115 double min_tauon_mudecay;
122 static const int N_TAUOLA=10001;
123 double tauola[N_TAUOLA][6];
124 ifstream tauolainfile;
127 void readData(
string,
string,
double (*)[NPROB_MAX],
double (*)[NPROB_MAX]);
128 void ReadSecondaries();
159 void GetTauDecay(
string nuflavor,
string current,
string& taudecay,
double& emfrac_db,
double& hadfrac_db);
161 void GetEMFracDB(
double& emfrac_db,
double& hadfrac_db);
177 int& n_interactions,
int taumodes1,
double ptauf);