typedef std::list<Criteria> Pi0::CriteriaList |
Definition at line 15 of file MakeGroupList.h.
typedef std::list<Criteria>::iterator Pi0::CriteriaIterator |
Definition at line 16 of file MakeGroupList.h.
typedef std::list<Criteria>::const_iterator Pi0::Const_CriteriaIteator |
Definition at line 17 of file MakeGroupList.h.
typedef std::list<GammaPair> Pi0::Pi0List |
Definition at line 19 of file MakeGroupList.h.
typedef std::list<GammaPair>::iterator Pi0::Pi0Iterator |
Definition at line 20 of file MakeGroupList.h.
typedef std::list<GammaPair>::const_iterator Pi0::Const_Pi0Iterator |
Definition at line 21 of file MakeGroupList.h.
typedef std::list<EvtRecTrack*> Pi0::GammaList |
Definition at line 23 of file MakeGroupList.h.
typedef std::list<EvtRecTrack*>::iterator Pi0::GammaIterator |
Definition at line 24 of file MakeGroupList.h.
typedef std::list<EvtRecTrack*>::const_iterator Pi0::Const_GammaIterator |
Definition at line 25 of file MakeGroupList.h.
GammaList& Pi0::GetDefaultGammaList | ( | ) |
Definition at line 33 of file MakeGroupList.h.
References default_gamma_list.
Referenced by Pi0RecAlg::execute().
00033 { return default_gamma_list;}
Pi0List& Pi0::GetCandidatePi0List | ( | ) |
Definition at line 35 of file MakeGroupList.h.
References candidate_pi0_list.
Referenced by Pi0RecAlg::execute().
00035 { return candidate_pi0_list;}
Pi0List& Pi0::GetFilterPi0List | ( | ) |
Definition at line 36 of file MakeGroupList.h.
References filter_pi0_list.
00036 { return filter_pi0_list;}
GammaList& Pi0::make_gamma_list | ( | UserPi0Cut & | cut | ) |
Definition at line 39 of file MakeGroupList.h.
References cut, default_gamma_list, EventModel::EvtRec::EvtRecTrackCol, UserPi0Cut::recEvt, UserPi0Cut::recTrkCol, EvtRecEvent::totalCharged(), and EvtRecEvent::totalTracks().
Referenced by Pi0RecAlg::execute().
00040 { 00041 EvtRecEvent* recEvt = UserPi0Cut::recEvt; 00042 EvtRecTrackCol* recTrkCol = UserPi0Cut::recTrkCol; 00043 00044 default_gamma_list.clear(); 00045 // update_gamma_list.clear(); 00046 for(int i1 = recEvt->totalCharged(); i1 < (recEvt->totalTracks()); ++i1) 00047 { 00048 00049 EvtRecTrack* gTrk = *(recTrkCol->begin() + i1); 00050 if(cut.isGoodPhoton(gTrk)) 00051 { 00052 default_gamma_list.push_back(gTrk); 00053 // update_gamma_list.push_back(gTrk); 00054 } 00055 } 00056 return default_gamma_list; 00057 }
void Pi0::print_gamma_list | ( | const GammaList & | list | ) |
Definition at line 64 of file MakeGroupList.h.
00065 { 00066 if(list.size() == 0) {std::cout<<"GammaList->()"<<std::endl; return;} 00067 std::cout<<"GammaList->("; 00068 for(Const_GammaIterator it = list.begin(); it!= list.end(); it++) 00069 { 00070 std::cout<<(*it)->trackId()<<", "; 00071 } 00072 std::cout<<')'<<std::endl; 00073 }
Definition at line 75 of file MakeGroupList.h.
References candidate_pi0_list, EvtRecTrack::emcShower(), and getP4().
Referenced by Pi0RecAlg::execute().
00076 { 00077 candidate_pi0_list.clear(); 00078 Const_GammaIterator i_it = gamma_list.begin(); 00079 Const_GammaIterator i_it_end = gamma_list.end(); 00080 Const_GammaIterator j_it_end = gamma_list.end(); 00081 00082 --i_it_end; 00083 00084 // KinematicFit * kmfit = KinematicFit::instance(); 00085 Const_GammaIterator j_it ; 00086 for(; i_it != i_it_end; ++i_it) 00087 { 00088 for( j_it = i_it, ++j_it ; j_it != j_it_end; ++j_it) 00089 { 00090 00091 EvtRecTrack* g1Trk = *i_it; 00092 EvtRecTrack* g2Trk = *j_it; 00093 00094 RecEmcShower* g1Shower = g1Trk->emcShower(); 00095 RecEmcShower* g2Shower = g2Trk->emcShower(); 00096 double inv_m = (getP4(g1Shower) + getP4(g2Shower)).m(); 00097 00098 /* kmfit->init(); 00099 kmfit->AddTrack(0, 0.0, g1Shower); 00100 kmfit->AddTrack(1, 0.0, g2Shower); 00101 kmfit->AddResonance(0, 0.1349766, 0, 1); 00102 kmfit->Fit(0);*/ 00103 00104 candidate_pi0_list.push_back(GammaPair(*i_it, *j_it, inv_m)); 00105 } 00106 } 00107 return candidate_pi0_list; 00108 }
void Pi0::print_pi0_list | ( | const Pi0List & | list | ) |
Definition at line 109 of file MakeGroupList.h.
00110 { 00111 std::cout<<"OK Pi0List->{"; 00112 for(Const_Pi0Iterator it = list.begin(); it!= list.end(); it++) 00113 { 00114 std::cout<<"("<<(*it).inv_m<<","<<(*it).First->trackId()<<","<<(*it).Second->trackId()<<"), "; 00115 } 00116 std::cout<<'}'<<std::endl; 00117 }
Definition at line 118 of file MakeGroupList.h.
References candidate_pi0_list, Criteria::check(), and filter_pi0_list.
Referenced by apply_criterias(), and Pi0RecAlg::execute().
00119 { 00120 Pi0Iterator it = candidate_pi0_list.begin(); 00121 for(; it!=candidate_pi0_list.end();) 00122 { 00123 if( cri.check(*it)) 00124 ++it; 00125 else{ 00126 filter_pi0_list.push_back(*it); 00127 it = candidate_pi0_list.erase(it); 00128 } 00129 00130 } 00131 return candidate_pi0_list; 00132 }
void Pi0::Pi0ListToTDS | ( | const Pi0List & | pi0list, | |
EvtRecPi0Col * | recPi0Col | |||
) |
Definition at line 133 of file MakeGroupList.h.
References KinematicFit::AddResonance(), TrackPool::AddTrack(), KinematicFit::chisq(), KinematicFit::Fit(), getP4(), KinematicFit::init(), KinematicFit::instance(), KinematicFit::pfit(), EvtRecPi0::setChisq(), EvtRecPi0::setHiEnGamma(), EvtRecPi0::setHiPfit(), EvtRecPi0::setLoEnGamma(), EvtRecPi0::setLoPfit(), EvtRecPi0::setUnconMass(), and xmpi0.
Referenced by Pi0RecAlg::execute().
00134 { 00135 assert(recPi0Col); 00136 static double xmpi0= 0.1349766; 00137 KinematicFit * kmfit = KinematicFit::instance(); 00138 00139 for(Const_Pi0Iterator it = pi0list.begin(); it != pi0list.end(); ++it) 00140 { 00141 EvtRecTrack* g1Trk = (*it).First; 00142 EvtRecTrack* g2Trk = (*it).Second; 00143 RecEmcShower* g1Shower = g1Trk->emcShower(); 00144 RecEmcShower* g2Shower = g2Trk->emcShower(); 00145 00146 kmfit->init(); 00147 kmfit->AddTrack(0, 0.0, g1Shower); 00148 kmfit->AddTrack(1, 0.0, g2Shower); 00149 kmfit->AddResonance(0, xmpi0, 0, 1); 00150 kmfit->Fit(0); 00151 00152 HepLorentzVector g1P4 = getP4(g1Shower); 00153 HepLorentzVector g2P4 = getP4(g2Shower); 00154 HepLorentzVector p2g = g1P4 + g2P4; 00155 EvtRecPi0* recPi0 = new EvtRecPi0(); 00156 00157 recPi0->setUnconMass(p2g.restMass()); 00158 recPi0->setChisq(kmfit->chisq(0)); 00159 if ( g1P4.e() >= g2P4.e() ) { 00160 recPi0->setHiPfit(kmfit->pfit(0)); 00161 recPi0->setLoPfit(kmfit->pfit(1)); 00162 recPi0->setHiEnGamma(g1Trk); 00163 recPi0->setLoEnGamma(g2Trk); 00164 } 00165 else { 00166 recPi0->setHiPfit(kmfit->pfit(1)); 00167 recPi0->setLoPfit(kmfit->pfit(0)); 00168 recPi0->setHiEnGamma(g2Trk); 00169 recPi0->setLoEnGamma(g1Trk); 00170 } 00171 00172 recPi0Col->push_back(recPi0); 00173 } 00174 }
void Pi0::apply_criterias | ( | ) |
Definition at line 202 of file MakeGroupList.h.
References apply_criteria(), and default_criteria_list.
00203 { 00204 for(CriteriaIterator it = default_criteria_list.begin(); it != default_criteria_list.end(); ++it) 00205 { 00206 apply_criteria(*it); 00207 } 00208 }
void Pi0::add_cut | ( | const Criteria & | cri | ) |
Definition at line 209 of file MakeGroupList.h.
References default_criteria_list.
00210 { 00211 default_criteria_list.push_back(cri); 00212 }
Definition at line 28 of file MakeGroupList.h.
Referenced by apply_criteria(), GetCandidatePi0List(), and make_pi0_list().
Definition at line 29 of file MakeGroupList.h.
Referenced by apply_criteria(), and GetFilterPi0List().
Definition at line 30 of file MakeGroupList.h.
Referenced by GetDefaultGammaList(), and make_gamma_list().
Definition at line 8 of file Pi0Cut.cxx.
UserPi0Cut Pi0::VeryLoosePi0Cut(0.02, 0.02, 20, 25, 0.1, 0.18, 1e+10) |
Definition at line 8 of file Pi0Cut.cxx.