[ROOT] TGenPhaseSpace...

From: Matthew Bellis (bellim@rpi.edu)
Date: Fri Jul 06 2001 - 17:21:49 MEST


Hi Rooters,

    I am using Root 3.01.03 on a Debian machine. I just started using
TGenPhaseSpace to generate some events. I thought I was doing it
correctly but perhaps not.
    I want to generate gamma p -> p pi+ pi-, flat in phase space. No
other physics. So I run...

  target.SetXYZM(0.0, 0.0, 0.0, 0.938);
  beam.SetXYZT(0.0, 0.0, .65, .65);
  W = beam + target;

  masses[0] = 0.938;
  masses[1] = 0.139;
  masses[2] = 0.139;

  if (event.SetDecay(W, 3, masses)) cout << "This is a possible event"
<< endl;

////// loop over events

  weight = event.Generate();

  pProton = event.GetDecay(0);
  pPip = event.GetDecay(1);
  pPim = event.GetDecay(2);

  *pPPip = *pProton + *pPip;
  *pPPim = *pProton + *pPim;
  *pPipPim = *pPip + *pPim;

     Where pProton, pPPip and such are pointers to TLorentzVectors
representing the final state particles and other mass combinations as
shown.

    It all seems to work admirably. However, when I look at Dalitz plots
involving the final state particles, for example p pi- vs. p pi+, the
plot does not seem quite uniformly populates. At the edges I seem to see
some sort accumulation. I don't think I've turned on any physics that
would lead to this, have I? Shouldn't the plot be completely flat? Am
I using the program properly? Or is this a mistake in my understanding
of the physics? Any help is greatly appreciated.

Matt Bellis
RPI



This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:51 MET