25 #define LOG std::cout << "TCS::DisambiguationInvmIncl2: "
51 p_NumberLeading1 = parameter(
"InputWidth1").value();
52 p_NumberLeading2 = parameter(
"InputWidth2").value();
53 if(parameter(
"MaxTob1").
value() > 0) p_NumberLeading1 = parameter(
"MaxTob1").value();
54 if(parameter(
"MaxTob2").
value() > 0) p_NumberLeading2 = parameter(
"MaxTob2").value();
56 for(
unsigned int i=0;
i<numberOutputBits(); ++
i) {
57 p_MinET1[
i] = parameter(
"MinET1",
i).value();
58 p_MinET2[
i] = parameter(
"MinET2",
i).value();
59 p_InvMassMin[
i] = parameter(
"MinMSqr",
i).value();
60 p_InvMassMax[
i] = parameter(
"MaxMSqr",
i).value();
72 const std::vector<TCS::TOBArray *> &
output,
75 if(
input.size() == 2) {
82 unsigned int invmass2 = calcInvMassBW( *tob1, *tob2 );
83 unsigned int deltaR2 = calcDeltaR2BW( *tob1, *tob2 );
84 for(
unsigned int i=0;
i<numberOutputBits(); ++
i) {
86 if(
parType_t((*tob1)->Et()) <= p_MinET1[
i])
continue;
87 if(
parType_t((*tob2)->Et()) <= p_MinET2[
i])
continue;
89 invmass2 >= p_InvMassMin[
i] &&
90 invmass2 <= p_InvMassMax[
i] );
97 <<
" invmass2 = " << invmass2);
102 TCS_EXCEPTION(
"DisambiguationInvmIncl2 alg must have 2 inputs, but got " <<
input.size());
109 const std::vector<TCS::TOBArray *> &
output,
112 if(
input.size() == 2) {
119 unsigned int invmass2 = calcInvMass( *tob1, *tob2 );
120 unsigned int deltaR2 = calcDeltaR2( *tob1, *tob2 );
121 for(
unsigned int i=0;
i<numberOutputBits(); ++
i) {
123 if(
parType_t((*tob1)->Et()) <= p_MinET1[
i])
continue;
124 if(
parType_t((*tob2)->Et()) <= p_MinET2[
i])
continue;
126 invmass2 >= p_InvMassMin[
i] &&
127 invmass2 <= p_InvMassMax[
i] );
137 TCS_EXCEPTION(
"DisambiguationInvmIncl2 alg must have 2 inputs, but got " <<
input.size());