- Timestamp:
- Jul 3, 2009, 6:14:36 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/LHEFConverter.cc
r443 r450 80 80 element->PID = hepeup.IDUP[particle]; 81 81 element->Status = hepeup.ISTUP[particle]; 82 element->Mother1 = hepeup.MOTHUP[particle].first; 83 element->Mother2 = hepeup.MOTHUP[particle].second; 82 element->M1 = hepeup.MOTHUP[particle].first; 83 element->M2 = hepeup.MOTHUP[particle].second; 84 element->D1 = 0; 85 element->D2 = 0; 84 86 element->ColorLine1 = hepeup.ICOLUP[particle].first; 85 87 element->ColorLine2 = hepeup.ICOLUP[particle].second; … … 107 109 } 108 110 111 112 //--------------------------------------------------------------------------- 113 /* 114 void LHEFConverter::AnalyseParticles(LHEF::Reader *reader, ExRootTreeBranch *branch) 115 { 116 const LHEF::HEPEUP &hepeup = reader->hepeup; 117 Double_t signPz; 118 TLorentzVector momentum; 119 TRootC::GenParticle *element; 120 121 for(Int_t particle = 0; particle < hepeup.NUP; ++particle) 122 { 123 element = (TRootC::GenParticle*) branch->NewEntry(); 124 125 element->PID = hepeup.IDUP[particle]; 126 element->Status = hepeup.ISTUP[particle]; 127 element->M1 = hepeup.MOTHUP[particle].first; 128 element->M2 = hepeup.MOTHUP[particle].second; 129 //element->ColorLine1 = hepeup.ICOLUP[particle].first; 130 //element->ColorLine2 = hepeup.ICOLUP[particle].second; 131 element->D1 = 0; 132 element->D2 = 0; 133 134 PdgParticle pdg_part = pdg_table[element->PID]; 135 element->Charge = pdg_part.charge(); 136 element->M = pdg_part.mass(); 137 //element->Charge = ChargeVal(element->PID); 138 //element->M = hepeup.PUP[particle][4]; 139 140 element->E = hepeup.PUP[particle][3]; 141 element->Px = hepeup.PUP[particle][0]; 142 element->Py = hepeup.PUP[particle][1]; 143 element->Pz = hepeup.PUP[particle][2]; 144 145 momentum.SetPxPyPzE(element->Px, element->Py, element->Pz, element->E); 146 element->PT = momentum.Perp(); 147 signPz = (element->Pz >= 0.0) ? 1.0 : -1.0; 148 //element->Eta = element->PT == 0.0 ? signPz*999.9 : momentum.Eta(); to avoid a warning from ROOT, replace the "==0" by "< 1e-6" 149 element->Eta = element->PT < 1E-6 ? signPz*999.9 : momentum.Eta(); 150 element->Phi = momentum.Phi(); 151 // element->Rapidity = element->PT < 1E-6 ? signPz*999.9 : momentum.Rapidity(); 152 // element->LifeTime = hepeup.VTIMUP[particle]; 153 // element->Spin = hepeup.SPINUP[particle]; 154 } 155 } 156 */ 157 109 158 LHEFConverter::~LHEFConverter() 110 159 { … … 112 161 113 162 //------------------------------------------------------------------------------ 114 LHEFConverter::LHEFConverter(const string& inputFileList, const string& outputFileName, const PdgTable& pdg, const int& Nevents) : 115 DataConverter(pdg,Nevents) { 163 LHEFConverter::LHEFConverter(const string& inputFileList, const string& outputFileName, const PdgTable& pdg, const int& Nevents) : DataConverter(pdg,Nevents) { 116 164 117 165 ExRootTreeWriter *treeWriter = new ExRootTreeWriter(outputFileName, "GEN"); … … 122 170 // generated partons from LHEF 123 171 ExRootTreeBranch *branchParticle = treeWriter->NewBranch("Particle", TRootLHEFParticle::Class()); 172 //ExRootTreeBranch *branchParticle = treeWriter->NewBranch("Particle", TRootC::GenParticle::Class()); 124 173 125 174 // Open a stream connected to an event file: … … 167 216 } 168 217 treeWriter->Write(); 169 170 171 218 delete treeWriter; 172 219 //delete inputReader;
Note:
See TracChangeset
for help on using the changeset viewer.