<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>