File indexing completed on 2024-04-06 12:24:51
0001 #include "HFEGammaSLCorrector.h"
0002
0003 #include <cmath>
0004
0005 namespace hf_egamma {
0006
0007 double eSeLCorrected(double es, double el, double pc, double px, double py) {
0008 double x = std::log(el / 100);
0009 double y = es / el;
0010 return pc + px * x + py * y;
0011 }
0012
0013 double eSeLCorrected(double es, double el, int era) {
0014 double pc = 0.0, px = 0.0, py = 0.0;
0015
0016 switch (era) {
0017 case (0):
0018 pc = -1.02388e-1;
0019 px = -1.51130e-1;
0020 py = 9.88514e-1;
0021 break;
0022 case (1):
0023 pc = -4.06012e-2;
0024 px = -1.34769e-1;
0025 py = 9.90877e-1;
0026 break;
0027 case (2):
0028 pc = 5.98732e-3;
0029 px = -1.74767e-1;
0030 py = 9.84610e-1;
0031 break;
0032 case (3):
0033 pc = -0.036416;
0034 px = -0.195854;
0035 py = 0.980633;
0036 break;
0037 case (4):
0038 pc = -0.008077;
0039 px = -0.216002;
0040 py = 0.976393;
0041 break;
0042 }
0043
0044
0045
0046
0047
0048
0049
0050
0051
0052
0053 return eSeLCorrected(es, el, pc, px, py);
0054 }
0055 }