12 double e0 = 6.91563e-02;
13 double e1 = 1.64406e+00;
14 double e2 = 6.42509e-01;
15 double E = e0 / (1 +
exp(
e1 * (log10(
mu) - e2)));
17 double d0 = 3.85334e-01;
18 double d1 = -1.04647e-02;
21 double c0 = 3.77629e-01;
22 double c1 = -3.23755e-01;
23 double c2 = 1.50247e+00;
24 double c3 = 3.03278e-01;
27 double b0 = -3.33575e-01;
28 double b1 = 4.44856e-01;
29 double b2 = 1.91766e+00;
30 double b3 = 2.69423e+00;
31 double b4 = 1.06905e+00;
35 double a0 = 7.18248e-02;
36 double a1 = 1.89016e+00;
37 double a2 = 2.15651e-02;
38 double a3 = 2.30786e-02;
39 double A =
exp(
B *
mu * 0.015) * (
a0 / (
exp(a1 * (log10(
mu) +
a2)) + 1) + a3);
41 double R = 0.01 *
D * (4 / (0.222 + E) / (0.222 + E) - 1 / ((0.22 -
z) * (
z + E)));
122 double mu = mu_ind + 0.7;
123 double lmu = log10(
mu);
125 double e0 = 6.91563e-02;
126 double e1 = 1.64406e+00;
127 double e2 = 6.42509e-01;
128 double E = e0 / (1 +
exp(
e1 * (lmu - e2)));
130 double d0 = 3.85334e-01;
131 double d1 = -1.04647e-02;
134 double c0 = 3.77629e-01;
135 double c1 = -3.23755e-01;
136 double c2 = 1.50247e+00;
137 double c3 = 3.03278e-01;
140 double b0 = -3.33575e-01;
141 double b1 = 4.44856e-01;
142 double b2 = 1.91766e+00;
143 double b3 = 2.69423e+00;
144 double b4 = 1.06905e+00;
147 double a0 = 7.18248e-02;
148 double a1 = 1.89016e+00;
149 double a2 = 2.15651e-02;
150 double a3 = 2.30786e-02;
151 double A =
exp(
B *
mu * 0.015) * (
a0 / (
exp(a1 * (lmu +
a2)) + 1) + a3);
153 double R = 0.01 *
D * (4 / (0.222 + E) / (0.222 + E) - 1 / ((0.22 * 0.22) * (1. -
z) * (
z + E / 0.22)));
156 double A0 = 0.0631452;
157 double B0 = -0.52267;
158 double C0 = -0.139646;
159 double D0 = 0.382522;
160 double E0 = 0.054473;
161 double R0 = 0.01 *
D0 * (4 / (0.222 + E0) / (0.222 + E0) - 1 / ((0.22 * 0.22) * (1. -
z) * (
z + E0 / 0.22)));
163 double f =
A / A0 *
exp(-(
B *
mu - B0 * 0.7) * 0.22 * (1. -
z)) * (1 +
C *
exp(
R)) / (1 + C0 *
exp(
R0));
170 double x = fabs(
eta);
172 return exp(-4.11065 + 0.258478 *
x);
174 return exp(-13.5112 + 7.913860 *
x - 0.998649 *
x *
x);
180 double x = fabs(
eta);
182 double et =
x / 1.48 * 34.0;
183 double etaprof = (9.54827 +
et * 0.0379222 +
et *
et * (-0.00257047) +
et *
et *
et * 0.00073546 +
184 et *
et *
et *
et * (-1.49683e-05)) /
195 double mu = 2.08E-13 *
pow(fluence, 1.0049);
201 double alpha = 4.72877e+00;
202 double beta = 5.91296e-01;
203 double amp1 = 6.24495e+02;
204 double amp2 = 1.84367e-01;
205 double offset = 2.00705e+01;
206 if (
z >= 0.0 &&
z <= 22.0) {
208 double term2 = amp2 * (
z - 11.0) * (
z - 11.0) +
offset;
209 return (term1 + term2) / 150.44;
217 double instantLumi = par[0];
222 double alpha = par[2];
229 double alpha1 = 3.41488e+00;
231 std::unique_ptr<TF1> ftmp1 = std::make_unique<TF1>(
"ftmp1",
238 "EquilibriumFractionColorCentersEM");
239 ftmp1->SetParameters(
lumi,
eta, alpha1);
240 double muEM = mu_max * ftmp1->Integral(0.0, 22.0) / 22.0;
254 double par[11] = {1.00000e+01,
266 double alpha = par[0];
268 double f1 = par[1] *
x + par[2] *
x *
x;
271 for (
int i = 9;
i >= 3;
i--)
272 f2 = par[
i] +
f2 * u;
275 retval =
exp(retval);
290 double par[9] = {5.17712e-03,
301 double slope = par[8];
302 for (
int i = 7;
i >= 0;
i--)
305 double retval = 1.0 +
slope * log10(ene / 50.0);
319 double par[10] = {-6.21503e+00,
332 for (
int i = 8;
i >= 0;
i--)
340 double tmpLumi = 0.0;
341 double stepLumi = 1.0;
343 while (tmpLumi < integralLumi) {
354 if (fabs(
eta) < 1.497)
357 double result = 0.772 + 0.228 * (3.94304e-01 *
exp(-Q / 5.99232
e-04) + (1 - 3.94304e-01) *
exp(-Q / 1.58243
e-02));
363 double x = fabs(
eta);
Double_t EquilibriumFractionColorCentersEM(double *x, double *par)
double LightCollectionEfficiencyWeighted(double z, double mu_ind)
static const double slope[3]
double NoiseFactorFE(double lumi, double eta)
double ResolutionConstantTermEM50GeV(double mu)
double DegradationMeanEM50GeV(double mu)
double DoseLongitudinalProfile(double z)
double InducedAbsorptionHadronic(double lumi, double eta)
double ChargeVPTCathode(double instLumi, double eta, double integralLumi)
double InducedAbsorptionEM(double lumi, double eta)
static constexpr float d0
DecomposeProduct< arg, typename Div::arg > D
static constexpr float a0
double DegradationNonLinearityEM50GeV(double mu, double ene)
double DamageProfileEta(double eta)
static constexpr float b2
static constexpr float b0
static constexpr float d1
double DamageProfileEtaAPD(double eta)
Power< A, B >::type pow(const A &a, const B &b)
static constexpr float b1
double LightCollectionEfficiency(double z, double mu)
double AgingVPT(double instLumi, double integralLumi, double eta)