Hi Joe, By default, TPythia::GenerateEvent produces TMCParticle not TParticle. See example below to access the TPCParticle data. Rene Brun { // dynamically link the shared libraries gSystem->Load("$PYTHIA/libPythia.so"); // Pythia library gSystem->Load("libEG.so"); // Root Event Generator interface gSystem->Load("libEGPythia.so"); // Root interface to Pythia TPythia *myPythia = new TPythia(); TMCParticle *myParticle; // Assume I've completed all initialization myPythia->Initialize("CMS","p","p",14000); myPythia.GenerateEvent(); int numParticles = myPythia.GetNumberOfParticles(); TObjArray *particles = myPythia.GetListOfParticles(); for(int i = 0; i < numParticles; i++) { myParticle = (TMCParticle*)particles->At(i); int KS = myParticle->GetKS(); float px = myParticle->GetPx(); float py = myParticle->GetPy(); float pz = myParticle->GetPz(); printf("i=%4d, KS=%d, px=%g, py=%g, pz=%g\n",i,KS,px,py,pz); } } On Fri, 26 Jul 2002, Joseph Tuggle wrote: > Hi, > > When I use the TPythia class to generate events, I seem to get > uninitialized variables instead of actual values. Here is an example... > > TPythia myPythia; > TParticle *myParticle; > > // Assume I've completed all initialization > > myPythia.GenerateEvent(); > int numParticles = myPythia.GetNumberOfParticles(); > for(int i = 0; i < numParticles; i++) { > myParticle = myPythia.GetParticle(i); > float px = myParticle->Px(); > } > > Now, if I look at px, py, pz, etc, they all seem to be uninitialized. > Same for Vx, Vy, Vz, and so on. Is there something simple I'm missing? > > Thanks, > Joe > >
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:01 MET