LorentzVector BOOST-method allways returns "nan"

From: Stephan Zimmer <zimmerst_at_googlemail.com>
Date: Sun, 26 Oct 2008 01:42:06 -0400


Dear all,

actually I'm working on a problem but I either can not the error in my code or I don't understand the documentation of this. I have actually a particle m which decays into two particles p1 and p2. I assume momentum conservation and want to boost p1 back into the decay frame of m. Therefore I assign m, p1 and p2 as TLorentzVector and try to use the p1.Boost(b) routine, where b is the spacial part of the TLorentzVector of m. I use the following code (assuming that p1 and p2 are correctly assigned and non-zero filled TLorentzVectors)

// assuming momentum conservation:

TLorentzVector m = p1 + p2;
// getting the spacial components:

TVector3 b;
b.SetXYZ(m.X(),m.Y(),m.Z());
// now boost p1 back into decay frame of m
p1.Boost(b);

The result is that my p1-vector has entries with NAN, thus I don't understand what is actually wrong. I also tried to use (instead of explicitly assigning of b) the following:
// assign b as Boostvector of m

TVector3 b;
b = m.BoostVector();
// boost

p1.Boost(b);

After this all my previous tests didn't worked at all, therefore I have written down a routine with the informations of the ROOT-documentation of that method:

TLorentzVector VecBoost(TLorentzVector vboost, TLorentzVector vdecay){   TLorentzVector vresult;
  // assign the boost-vector;
  TVector3 bprim = vboost.BoostVector();   // back boost into decay frame
  TVector3 b = -bprim;
  TVector3 x,xprim;
  double gamma, beta2, t,tprim;
  beta2 = b.X()*b.X()+b.Y()*b.Y()+b.Z()*b.Z();   gamma = pow(1-beta2,-0.5);
  xprim.SetXYZ(vdecay.X(),vdecay.Y(),vdecay.Z());   tprim = vdecay.T();
  t = gamma*(tprim+b*xprim);
  x = xprim+ (gamma-1)/beta2 * (b*xprim)*b + gamma*tprim*b;   vresult.SetXYZT(x.X(),x.Y(),x.Z(),t);
  return vresult;
}

What am I doing wrong? Why it allways return for the explicite elements: nan? Thanks a lot for helping, btw. my current ROOT-Version is: "ROOT 5.20/00 (trunk_at_24524, Oct 08 2008, 00:11:00 on linux)" under Scientific Linux

Best Regards,
Stephan Zimmer

Received on Sun Oct 26 2008 - 01:42:28 CEST

This archive was generated by hypermail 2.2.0 : Tue Oct 28 2008 - 11:50:02 CET