<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hello!<br>
<br>
I am trying to implement an ATLAS analysis in rivet.<br>
We measured the transverse sphericity and I think your projection
and our definition aren't the same.<br>
In how far is it possible to implement "our sphericity" to rivet?<br>
Below is our routine to calculate the sphericity.<br>
<br>
Best regards,<br>
<br>
Tobias<br>
<br>
<small><i>double<br>
CalcTranSphericity(double sumpx2, double sumpy2, double sumpxpy)
//sum of px^2, py^2, px*py. Input: Momenta of all charged
particles within |eta|<2.5, pT>500MeV<br>
{<br>
double marray[4];<br>
for (int i = 0; i < 4; i++)<br>
{<br>
marray[i] = 0;<br>
}<br>
marray[0] = sumpx2;<br>
marray[1] = sumpxpy;<br>
marray[2] = sumpxpy;<br>
marray[3] = sumpy2;<br>
<br>
// use root matrix to find eigenvalues...<br>
TMatrixDSym matrix(2);<br>
matrix.SetMatrixArray(marray);<br>
<br>
TMatrixDSymEigen eigen(matrix);<br>
TVectorD E = eigen.GetEigenValues();<br>
<br>
double lambda1 = 0;<br>
double lambda2 = 0;<br>
<br>
if (E[0] < E[1])<br>
{<br>
lambda1 = E[0];<br>
lambda2 = E[1];<br>
}<br>
else<br>
{<br>
lambda1 = E[1];<br>
lambda2 = E[0];<br>
}<br>
<br>
double ST = 0;<br>
ST = 2 * lambda1 / (lambda1 + lambda2);<br>
// std::cout<<"Check:lambda1+lambda2 "<<lambda1 +
lambda2 <<std::endl;<br>
if ((lambda1 + lambda2) == 0) return -1;<br>
return ST;<br>
}</i></small><br>
</body>
</html>