Pi0 Namespace Reference


Typedefs

typedef std::list< CriteriaCriteriaList
typedef std::list< Criteria
>::iterator 
CriteriaIterator
typedef std::list< Criteria
>::const_iterator 
Const_CriteriaIteator
typedef std::list< GammaPairPi0List
typedef std::list< GammaPair
>::iterator 
Pi0Iterator
typedef std::list< GammaPair
>::const_iterator 
Const_Pi0Iterator
typedef std::list< EvtRecTrack * > GammaList
typedef std::list< EvtRecTrack
* >::iterator 
GammaIterator
typedef std::list< EvtRecTrack
* >::const_iterator 
Const_GammaIterator

Functions

GammaListGetDefaultGammaList ()
Pi0ListGetCandidatePi0List ()
Pi0ListGetFilterPi0List ()
GammaListmake_gamma_list (UserPi0Cut &cut)
void print_gamma_list (const GammaList &list)
Pi0Listmake_pi0_list (const GammaList &gamma_list)
void print_pi0_list (const Pi0List &list)
Pi0Listapply_criteria (const Criteria &cri)
void Pi0ListToTDS (const Pi0List &pi0list, EvtRecPi0Col *recPi0Col)
void apply_criterias ()
void add_cut (const Criteria &cri)

Variables

CriteriaList default_criteria_list
Pi0List candidate_pi0_list
Pi0List filter_pi0_list
GammaList default_gamma_list
UserPi0Cut VeryLoosePi0Cut
UserPi0Cut DefaultPi0Cut
UserPi0Cut VeryLoosePi0Cut (0.02, 0.02, 20, 25, 0.1, 0.18, 1e+10)
UserPi0Cut DefaultPi0Cut


Typedef Documentation

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.


Function Documentation

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         }

Pi0List& Pi0::make_pi0_list ( const GammaList gamma_list  ) 

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         }

Pi0List& Pi0::apply_criteria ( const Criteria cri  ) 

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         }


Variable Documentation

CriteriaList Pi0::default_criteria_list

Definition at line 27 of file MakeGroupList.h.

Referenced by add_cut(), and apply_criterias().

Pi0List Pi0::candidate_pi0_list

Definition at line 28 of file MakeGroupList.h.

Referenced by apply_criteria(), GetCandidatePi0List(), and make_pi0_list().

Pi0List Pi0::filter_pi0_list

Definition at line 29 of file MakeGroupList.h.

Referenced by apply_criteria(), and GetFilterPi0List().

GammaList Pi0::default_gamma_list

Definition at line 30 of file MakeGroupList.h.

Referenced by GetDefaultGammaList(), and make_gamma_list().

UserPi0Cut Pi0::VeryLoosePi0Cut

UserPi0Cut Pi0::DefaultPi0Cut

Definition at line 8 of file Pi0Cut.cxx.

UserPi0Cut Pi0::VeryLoosePi0Cut(0.02, 0.02, 20, 25, 0.1, 0.18, 1e+10)

UserPi0Cut Pi0::DefaultPi0Cut

Definition at line 8 of file Pi0Cut.cxx.


Generated on Tue Nov 29 23:36:35 2016 for BOSS_7.0.2 by  doxygen 1.4.7