22 verbosity(other.verbosity)
38 TString path = TString(MELAPKGPATH.c_str()) +
"data/resolution_mJJ_recoVStrue_";
54 path += Form(
"_%.0fTeV%s",
sqrts,
".root");
56 TString appendName = Form(
"mJJReso_%.0fTeV",
sqrts);
59 int iprod = (int)prod;
62 else MELAerr <<
"SuperDijetMela::SetupResolutionModel: Model MELADifermionResolutionModel(" <<
TVar::ProductionName(prod) <<
", " <<
sqrts <<
", " << path <<
", " << appendName <<
") cannot be built." << endl;
66 int iprod = (int)prod;
70 int AssociationVCompatibility=0;
72 if (modelExists || useTrueBW){
74 int nRequested_AssociatedJets=0;
78 nRequested_AssociatedJets=2;
81 else if (prod==
TVar::Had_ZH) AssociationVCompatibility=23;
92 vector<TLorentzVector> pJets;
94 for (
auto& part : pAssociated){
96 if (pJets.size()==2)
break;
98 if (pJets.size()==2) mJJval = (pJets[0] + pJets[1]).M();
102 float truePoleMass=-1;
103 float truePoleWidth=-1;
105 if (AssociationVCompatibility!=0){
108 if (mJJval>=0.) result = 1./(pow(pow(mJJval, 2)-pow(truePoleMass, 2), 2) + pow(truePoleMass*truePoleWidth, 2));
112 <<
"SuperDijetMela::GetConvBW[idV=" << AssociationVCompatibility <<
"]::"
113 <<
"sqrt(s) = " << mJJval
114 <<
", true (m,Gamma) = ( " << truePoleMass <<
" , " << truePoleWidth <<
" )"
115 <<
", ideal BW = " << result
118 else if (modelExists){
122 <<
"sqrt(s) = " << mJJval
123 <<
", reco BW = " << result
129 <<
"sqrt(s) = " << mJJval
130 <<
", return value = " << result