[Rivet] Transverse mass bug(?)

Gavin Hesketh gavin.hesketh at cern.ch
Fri Apr 13 11:38:19 BST 2012

Hi again,
by the way, I was working with Rivet 1.8. I put a simple fix into my 
local version, in Projections/InvMassFinalState.cc:

if (_useTransverseMass) {
  passedMassCut = inRange(v4.massT(), _minmass, _maxmass);
         } else {


if (_useTransverseMass) {
  passedMassCut = inRange(massT(i1->momentum(), i2->momentum()) ,
                          _minmass, _maxmass);
         } else {

where I also added this helper function:

double massT( FourMomentum v1, FourMomentum v2) {
  return sqrt( (v1.Et() + v2.Et())*(v1.Et() + v2.Et()) -
               (v1+v2).perp()*(v1+v2).perp() );

The existing massT and massT2 functions should be deleted from 
Vector4.hh. This still compiled fine in my local vesion, so I guess this 
function was only being called by InvMassFinalState.cc.

At some point an an analysis someone will want to plot the W transverse 
mass; I guess this would have to be done along the lines of:

massT( wfinder.constituentLeptons()[0].momentum(), 
wfinder.constituentNeutrinos()[0].momentum() );

but maybe you have some better ideas.


On 12/04/12 18:13, Gavin Hesketh wrote:
> Hello,
> I think there is a problem in the definition of transverse mass in Rivet
> (though I may have got up a bit too early this morning to be doing
> 4-vector manipulation at this point in the day!)
> Transverse mass is defined as:
> mT^2 = (ET1 + ET2)^2 - (pT1 + pT2)^2
> 1 & 2 are the lepton and neutrino. the second term is a vector sum. This
> is equivalent to
> mT^2 = (ET1 + ET2)^2 - pTW^2
> but is not equivalent (I think) equivalent to the definition in Vector4.hh:
> mT = M * sin(theta);
> I don't think you can derive the transverse mass purely from the
> 4-vector of the W - you need the vectors (or at least the transverse
> energies) of the decay products. This may mean a bit of rewriting for
> the InvMassFinalState, but nothing too serious. But right now all the
> analyses involving W's will be wrong.
> cheers,
> Gavin

More information about the Rivet mailing list