#include <MillGenTree.h>
Public Member Functions | |
| MillGenTree () | |
| MillGenTree (TTree *treeIn, TTree *treeOut) | |
| void | MillTrees () override |
Public Member Functions inherited from garana::Mill | |
| virtual | ~Mill () |
| bool | IsVerified () const |
| std::string | CharStarToString (const char *cstr) |
Public Member Functions inherited from garana::FlatGenTree | |
| FlatGenTree () | |
| FlatGenTree (TTree *tree) | |
| FlatGenTree (TTree *tree, char opt) | |
| const UInt_t | NGen () const override |
| const UInt_t | NFSParticles (const UInt_t &igen) const override |
| const Bool_t | IsGenie (const UInt_t &igen) const override |
| const int | NuRegion (const UInt_t &igen) const override |
| region code where the vertex is located More... | |
| const Bool_t | IsCC (const UInt_t &igen) const override |
| whether interaction is CC or not More... | |
| const Int_t | NuPDG (const UInt_t &igen) const override |
| neutrino PDG code More... | |
| const TLorentzVector * | NuP (const UInt_t &igen) override |
| initial neutrino 4-momentum More... | |
| const TLorentzVector * | NuVertex (const UInt_t &igen) override |
| 4-position of neutrino vertex More... | |
| const int | ScatterCode (const UInt_t &igen) const override |
| GENIE neutrino scattering code. More... | |
| const int | InteractCode (const UInt_t &igen) const override |
| GENIE interaction code. More... | |
| const Int_t | TgtPDG (const UInt_t &igen) const override |
| PDG of Target Nucleus, nucleon only if free. More... | |
| const TLorentzVector * | TgtP4 (const UInt_t &igen) const override |
| target 4-momentum More... | |
| const int | TgtZ (const UInt_t &igen) const override |
| target Z More... | |
| const int | TgtA (const UInt_t &igen) const override |
| target A More... | |
| const int | HitNucPDG (const UInt_t &igen) const override |
| hit nucleon PDG code More... | |
| const TLorentzVector * | HitNucP4 (const UInt_t &igen) const override |
| hit nucleon (initial) 4-momentum More... | |
| const double | Q2 (const UInt_t &igen) const override |
| const double | q2 (const UInt_t &igen) const override |
| const double | W (const UInt_t &igen) const override |
| const double | T (const UInt_t &igen) const override |
| const double | X (const UInt_t &igen) const override |
| const double | Y (const UInt_t &igen) const override |
| const TLorentzVector * | FSLeptonP4 (const UInt_t &igen) const override |
| final state primary lepton 4-momentum (LAB frame) More... | |
| const TLorentzVector * | FSHadSystP4 (const UInt_t &igen) const override |
| final state hadronic system 4-momentum(LAB frame) More... | |
| const int | NumNuProton (const UInt_t &igen) const override |
| number of protons after reaction, before FSI More... | |
| const int | NumNuNeutron (const UInt_t &igen) const override |
| number of neutrons after reaction, before FSI More... | |
| const int | NumNuPi0 (const UInt_t &igen) const override |
| number of pi0 after reaction, before FSI More... | |
| const int | NumNuPiPlus (const UInt_t &igen) const override |
| number of pi pluses after reaction, before FSI More... | |
| const int | NumNuPiMinus (const UInt_t &igen) const override |
| number of pi minuses after reaction, before FSI More... | |
| const Float_t | FSTotEnergy (const UInt_t &igen) const override |
| const Float_t | FSEnergy (const UInt_t &igen, const UInt_t &ifsp) const override |
| const Float_t | FSPDG (const UInt_t &igen, const UInt_t &ifsp) const override |
| const Int_t | FSTrackId (const UInt_t &igen, const UInt_t &ifsp) const override |
| void | GetEntry (const UInt_t &ientry) override |
Public Member Functions inherited from garana::GenTree | |
| virtual | ~GenTree () |
| const std::vector< Int_t > * | GetGIndex () const |
| whether or not subentry is GENIE interaction, index of GENIE interaction More... | |
| bool | NuInAV (const UInt_t &igen) const |
| bool | NuInIV (const UInt_t &igen) const |
| bool | NuInCalo (const UInt_t &igen) const |
Public Member Functions inherited from garana::TreeReader | |
| virtual | ~TreeReader () |
| void | SetupRead (TTree *tree) |
| TTree * | GetInputTree () |
| size_t | NEntries () const |
| Int_t | Event () const |
| const TObjArray * | GetBranchList () const |
| void | Fill () |
| void | Write () |
| void | CheckOpt (char opt) |
| bool | BlockWrite () const |
Private Types | |
| enum | GenBranch { kEvent, kGIndex, kGTruth, kFSParticle } |
Private Member Functions | |
| bool | VerifyBranches () override |
| void | FillGTruth (const GTruth *truth) |
| void | FillEmptyGTruth () |
| void | FillFSParticle (const vector< FSParticle > *fsp) |
Private Attributes | |
| StructuredGenTree * | fGenIn = nullptr |
| std::map< std::string, GenBranch > | nameToGenBranch |
| std::map< GenBranch, bool > | branchToDrawOpt |
Additional Inherited Members | |
Protected Types inherited from garana::FlatGenTree | |
| typedef UInt_t | fsLimit |
| typedef fsLimit | fsBegin |
| typedef fsLimit | fsEnd |
Protected Member Functions inherited from garana::FlatGenTree | |
| bool | SetBranchAddresses () override |
| void | FindFSLimits () |
| std::pair< UInt_t, UInt_t > | FSParticlesFromGTruth (size_t igen) const |
| void | SetVecs () |
| void | ClearVecs () |
Protected Attributes inherited from garana::Mill | |
| bool | fIsVerified = false |
| TTree * | fTreeOut = nullptr |
| TFile * | fOutfile = nullptr |
Protected Attributes inherited from garana::FlatGenTree | |
| vector< std::pair< fsBegin, fsEnd > > | fGenToFSLimits |
| TLorentzVector | fNuP |
| TLorentzVector | fNuVertex |
| Int_t | fNGen = -1 |
| const vector< Int_t > * | fGIndex = nullptr |
| vector< UInt_t > | fNFSObj |
| number of FSParticles for igen^th GTruth len=NGen More... | |
| vector< UInt_t > | fFSIndexObj |
| vector< UInt_t > | fFSPdgObj |
| particle PDG code More... | |
| vector< Float_t > | fFSPosXObj |
| x-coordinate [cm] More... | |
| vector< Float_t > | fFSPosYObj |
| y-coordinate [cm] More... | |
| vector< Float_t > | fFSPosZObj |
| z-coordinate [cm] More... | |
| vector< Float_t > | fFSTObj |
| time [ns] More... | |
| vector< Float_t > | fFSMomXObj |
| momentum, x-component [GeV/c] More... | |
| vector< Float_t > | fFSMomYObj |
| momentum, y-component [GeV/c] More... | |
| vector< Float_t > | fFSMomZObj |
| momentum, z-component [GeV/c] More... | |
| vector< Float_t > | fFSEObj |
| total energy [GeV] More... | |
| vector< double > | fNuXObj |
| GTruth (one or more per genTree entry) //. More... | |
| vector< double > | fNuYObj |
| vector< double > | fNuZObj |
| vector< double > | fNuTObj |
| vector< double > | fWeightObj |
| vector< double > | fProbabilityObj |
| vector< double > | fXsecObj |
| vector< double > | fDiffXsecObj |
| vector< int > | fGPhaseSpaceObj |
| vector< int > | fProbePDGObj |
| vector< double > | fProbePxObj |
| vector< double > | fProbePyObj |
| vector< double > | fProbePzObj |
| vector< double > | fProbeEObj |
| vector< double > | fTgtPxObj |
| vector< double > | fTgtPyObj |
| vector< double > | fTgtPzObj |
| vector< double > | fTgtEObj |
| vector< int > | fTgtZObj |
| vector< int > | fTgtAObj |
| vector< int > | fTgtPDGObj |
| vector< int > | fHitNucPDGObj |
| vector< int > | fHitQrkPDGObj |
| vector< bool > | fIsSeaQuarkObj |
| vector< double > | fHitNucPxObj |
| vector< double > | fHitNucPyObj |
| vector< double > | fHitNucPzObj |
| vector< double > | fHitNucEObj |
| vector< double > | fHitNucPosObj |
| vector< int > | fGscatterObj |
| vector< int > | fGintObj |
| vector< double > | fGQ2Obj |
| vector< double > | fGq2Obj |
| vector< double > | fGWObj |
| vector< double > | fGTObj |
| vector< double > | fGXObj |
| vector< double > | fGYObj |
| vector< double > | fFSleptonPxObj |
| vector< double > | fFSleptonPyObj |
| vector< double > | fFSleptonPzObj |
| vector< double > | fFSleptonEObj |
| vector< double > | fFShadSystPxObj |
| vector< double > | fFShadSystPyObj |
| vector< double > | fFShadSystPzObj |
| vector< double > | fFShadSystEObj |
| vector< bool > | fIsCharmObj |
| vector< int > | fCharmHadronPDGObj |
| vector< bool > | fIsStrangeObj |
| vector< int > | fStrangeHadronPDGObj |
| vector< int > | fNumProtonObj |
| vector< int > | fNumNeutronObj |
| vector< int > | fNumPi0Obj |
| vector< int > | fNumPiPlusObj |
| vector< int > | fNumPiMinusObj |
| vector< int > | fResNumObj |
| vector< int > | fDecayModeObj |
| vector< UInt_t > * | fNFS = nullptr |
| number of FSParticles for igen^th GTruth len=NGen More... | |
| vector< UInt_t > * | fFSIndex = nullptr |
| vector< UInt_t > * | fFSTrackId = nullptr |
| particle generator track ID More... | |
| vector< UInt_t > * | fFSPdg = nullptr |
| particle PDG code More... | |
| vector< Float_t > * | fFSPosX = nullptr |
| x-coordinate [cm] More... | |
| vector< Float_t > * | fFSPosY = nullptr |
| y-coordinate [cm] More... | |
| vector< Float_t > * | fFSPosZ = nullptr |
| z-coordinate [cm] More... | |
| vector< Float_t > * | fFST = nullptr |
| time [ns] More... | |
| vector< Float_t > * | fFSMomX = nullptr |
| momentum, x-component [GeV/c] More... | |
| vector< Float_t > * | fFSMomY = nullptr |
| momentum, y-component [GeV/c] More... | |
| vector< Float_t > * | fFSMomZ = nullptr |
| momentum, z-component [GeV/c] More... | |
| vector< Float_t > * | fFSE = nullptr |
| total energy [GeV] More... | |
| vector< double > * | fNuX = nullptr |
| GTruth (one or more per genTree entry) //. More... | |
| vector< double > * | fNuY = nullptr |
| vector< double > * | fNuZ = nullptr |
| vector< double > * | fNuT = nullptr |
| vector< int > * | fNuRegion = nullptr |
| vector< double > * | fWeight = nullptr |
| vector< double > * | fProbability = nullptr |
| vector< double > * | fXsec = nullptr |
| vector< double > * | fDiffXsec = nullptr |
| vector< int > * | fGPhaseSpace = nullptr |
| vector< int > * | fProbePDG = nullptr |
| vector< double > * | fProbePx = nullptr |
| vector< double > * | fProbePy = nullptr |
| vector< double > * | fProbePz = nullptr |
| vector< double > * | fProbeE = nullptr |
| vector< double > * | fTgtPx = nullptr |
| vector< double > * | fTgtPy = nullptr |
| vector< double > * | fTgtPz = nullptr |
| vector< double > * | fTgtE = nullptr |
| vector< int > * | fTgtZ = nullptr |
| vector< int > * | fTgtA = nullptr |
| vector< int > * | fTgtPDG = nullptr |
| vector< int > * | fHitNucPDG = nullptr |
| vector< int > * | fHitQrkPDG = nullptr |
| vector< bool > * | fIsSeaQuark = nullptr |
| vector< double > * | fHitNucPx = nullptr |
| vector< double > * | fHitNucPy = nullptr |
| vector< double > * | fHitNucPz = nullptr |
| vector< double > * | fHitNucE = nullptr |
| vector< double > * | fHitNucPos = nullptr |
| vector< int > * | fGscatter = nullptr |
| vector< int > * | fGint = nullptr |
| vector< double > * | fGQ2 = nullptr |
| vector< double > * | fGq2 = nullptr |
| vector< double > * | fGW = nullptr |
| vector< double > * | fGT = nullptr |
| vector< double > * | fGX = nullptr |
| vector< double > * | fGY = nullptr |
| vector< double > * | fFSleptonPx = nullptr |
| vector< double > * | fFSleptonPy = nullptr |
| vector< double > * | fFSleptonPz = nullptr |
| vector< double > * | fFSleptonE = nullptr |
| vector< double > * | fFShadSystPx = nullptr |
| vector< double > * | fFShadSystPy = nullptr |
| vector< double > * | fFShadSystPz = nullptr |
| vector< double > * | fFShadSystE = nullptr |
| vector< bool > * | fIsCharm = nullptr |
| vector< int > * | fCharmHadronPDG = nullptr |
| vector< bool > * | fIsStrange = nullptr |
| vector< int > * | fStrangeHadronPDG = nullptr |
| vector< int > * | fNumProton = nullptr |
| vector< int > * | fNumNeutron = nullptr |
| vector< int > * | fNumPi0 = nullptr |
| vector< int > * | fNumPiPlus = nullptr |
| vector< int > * | fNumPiMinus = nullptr |
| vector< int > * | fResNum = nullptr |
| vector< int > * | fDecayMode = nullptr |
| TBranch * | b_NGen = nullptr |
| TBranch * | b_GIndex = nullptr |
| TBranch * | b_NFS = nullptr |
| TBranch * | b_FSIndex = nullptr |
| TBranch * | b_FSPdg = nullptr |
| TBranch * | b_FSPosX = nullptr |
| TBranch * | b_FSPosY = nullptr |
| TBranch * | b_FSPosZ = nullptr |
| TBranch * | b_FST = nullptr |
| TBranch * | b_FSMomX = nullptr |
| TBranch * | b_FSMomY = nullptr |
| TBranch * | b_FSMomZ = nullptr |
| TBranch * | b_FSE = nullptr |
| TBranch * | b_NuX = nullptr |
| TBranch * | b_NuY = nullptr |
| TBranch * | b_NuZ = nullptr |
| TBranch * | b_NuT = nullptr |
| TBranch * | b_NuRegion = nullptr |
| TBranch * | b_Weight = nullptr |
| TBranch * | b_Probability = nullptr |
| TBranch * | b_Xsec = nullptr |
| TBranch * | b_DiffXsec = nullptr |
| TBranch * | b_GPhaseSpace = nullptr |
| TBranch * | b_ProbePDG = nullptr |
| TBranch * | b_ProbePx = nullptr |
| TBranch * | b_ProbePy = nullptr |
| TBranch * | b_ProbePz = nullptr |
| TBranch * | b_ProbeE = nullptr |
| TBranch * | b_TgtPx = nullptr |
| TBranch * | b_TgtPy = nullptr |
| TBranch * | b_TgtPz = nullptr |
| TBranch * | b_TgtE = nullptr |
| TBranch * | b_TgtZ = nullptr |
| TBranch * | b_TgtA = nullptr |
| TBranch * | b_TgtPDG = nullptr |
| TBranch * | b_HitNucPDG = nullptr |
| TBranch * | b_HitQrkPDG = nullptr |
| TBranch * | b_IsSeaQuark = nullptr |
| TBranch * | b_HitNucPx = nullptr |
| TBranch * | b_HitNucPy = nullptr |
| TBranch * | b_HitNucPz = nullptr |
| TBranch * | b_HitNucE = nullptr |
| TBranch * | b_HitNucPos = nullptr |
| TBranch * | b_Gscatter = nullptr |
| TBranch * | b_Gint = nullptr |
| TBranch * | b_GQ2 = nullptr |
| TBranch * | b_Gq2 = nullptr |
| TBranch * | b_GW = nullptr |
| TBranch * | b_GT = nullptr |
| TBranch * | b_GX = nullptr |
| TBranch * | b_GY = nullptr |
| TBranch * | b_FSleptonPx = nullptr |
| TBranch * | b_FSleptonPy = nullptr |
| TBranch * | b_FSleptonPz = nullptr |
| TBranch * | b_FSleptonE = nullptr |
| TBranch * | b_FShadSystPx = nullptr |
| TBranch * | b_FShadSystPy = nullptr |
| TBranch * | b_FShadSystPz = nullptr |
| TBranch * | b_FShadSystE = nullptr |
| TBranch * | b_IsCharm = nullptr |
| TBranch * | b_CharmHadronPDG = nullptr |
| TBranch * | b_IsStrange = nullptr |
| TBranch * | b_StrangeHadronPDG = nullptr |
| TBranch * | b_NumProton = nullptr |
| TBranch * | b_NumNeutron = nullptr |
| TBranch * | b_NumPi0 = nullptr |
| TBranch * | b_NumPiPlus = nullptr |
| TBranch * | b_NumPiMinus = nullptr |
| TBranch * | b_ResNum = nullptr |
| TBranch * | b_DecayMode = nullptr |
Protected Attributes inherited from garana::GenTree | |
| const std::vector< Int_t > * | fGIndex = nullptr |
| TBranch * | b_GIndex = nullptr |
Protected Attributes inherited from garana::TreeReader | |
| const std::string | treename |
| char | fOpt = 'r' |
| TTree * | fTreeIn = nullptr |
| pointer to the analyzed TTree or TChain More... | |
| UInt_t | fCurrentEntry = UINT_MAX |
| TBranch * | b_Event = nullptr |
| Int_t | fEvent = -1 |
| event number for tree entry More... | |
Definition at line 16 of file MillGenTree.h.
|
private |
| Enumerator | |
|---|---|
| kEvent | |
| kGIndex | |
| kGTruth | |
| kFSParticle | |
Definition at line 37 of file MillGenTree.h.
|
inline |
Definition at line 20 of file MillGenTree.h.
| MillGenTree::MillGenTree | ( | TTree * | treeIn, |
| TTree * | treeOut | ||
| ) |
Definition at line 26 of file MillGenTree.cxx.
|
private |
Definition at line 228 of file MillGenTree.cxx.
|
private |
Definition at line 291 of file MillGenTree.cxx.
|
private |
Definition at line 161 of file MillGenTree.cxx.
|
overridevirtual |
Implements garana::Mill.
Definition at line 43 of file MillGenTree.cxx.
|
overrideprivatevirtual |
Implements garana::Mill.
Definition at line 103 of file MillGenTree.cxx.
Definition at line 51 of file MillGenTree.h.
|
private |
Definition at line 32 of file MillGenTree.h.
|
private |
Definition at line 44 of file MillGenTree.h.
1.8.11