#include <RhoEventShapes.h>
Definition at line 24 of file RhoEventShapes.h.
RhoEventShapes::RhoEventShapes |
( |
RhoCandList & |
l, |
|
|
TLorentzVector |
cms |
|
) |
| |
Definition at line 7 of file RhoEventShapes.cxx.
References RhoCandidate::Charge(), fBoost, fCharge, fchrgpsumcms, fchrgpsumlab, fchrgptsumcms, fchrgptsumlab, fCmsList, fFWmom, fLabList, fN, fnChrg, fneutesumcms, fneutesumlab, fneutetsumcms, fneutetsumlab, fnNeut, fpmaxcms, fpmaxlab, fptmax, fptsumcms, fptsumlab, fThrVect, FWMAX, RhoCandList::GetLength(), i, and RhoCandidate::P4().
21 double pmax=0., ptmax=0., pmaxcms=0.;
29 TLorentzVector lv(cand->
P4());
57 if (lv.P()>pmax) pmax=lv.P();
58 if (lv.Pt()>ptmax) ptmax=lv.Pt();
78 if (lv.P()>pmaxcms) pmaxcms=lv.P();
std::vector< TLorentzVector > fCmsList
! List of 4-vectors in cms frame
std::vector< int > fCharge
! List of charges of particles
TLorentzVector P4() const
std::vector< TLorentzVector > fLabList
! List of 4-vectors in lab frame
virtual RhoEventShapes::~RhoEventShapes |
( |
| ) |
|
|
inlinevirtual |
double RhoEventShapes::Aplanarity |
( |
| ) |
|
double RhoEventShapes::ChrgPSumCms |
( |
| ) |
const |
|
inline |
double RhoEventShapes::ChrgPSumLab |
( |
| ) |
const |
|
inline |
double RhoEventShapes::ChrgPtSumCms |
( |
| ) |
const |
|
inline |
double RhoEventShapes::ChrgPtSumLab |
( |
| ) |
const |
|
inline |
void RhoEventShapes::ComputeSphericity |
( |
| ) |
|
|
private |
Definition at line 88 of file RhoEventShapes.cxx.
References fapl, fCmsList, fN, fpla, fsph, i, and v.
Referenced by Aplanarity(), Planarity(), and Sphericity().
92 double stot=0, sxx=0, sxy=0, sxz=0, syy=0, syz=0, szz=0;
99 sxx +=
v.X()*
v.X(); sxy +=
v.X()*
v.Y(); sxz +=
v.X()*
v.Z();
100 syy +=
v.Y()*
v.Y(); syz +=
v.Y()*
v.Z();
107 sm(0,0) = sxx/stot; sm(0,1) = sxy/stot; sm(0,2) = sxz/stot;
108 sm(1,0) = sxy/stot; sm(1,1) = syy/stot; sm(1,2) = syz/stot;
109 sm(2,0) = sxz/stot; sm(2,1) = syz/stot; sm(2,2) = szz/stot;
111 TMatrixDEigen ei(sm);
114 fsph = 1.5 * (eiv(1,1) + eiv(2,2));
115 fapl = 1.5 * eiv(2,2);
116 fpla = eiv(1,1) - eiv(2,2);
std::vector< TLorentzVector > fCmsList
! List of 4-vectors in cms frame
TMatrixT< double > TMatrixD
double RhoEventShapes::Eps |
( |
const TVector3 |
v1, |
|
|
const TVector3 |
v2 |
|
) |
| |
|
inlineprivate |
double RhoEventShapes::FoxWolfMomH |
( |
int |
order | ) |
|
Definition at line 235 of file RhoEventShapes.cxx.
References cos(), fCmsList, fFWmom, fFWready, fN, FWMAX, i, Legendre(), p1, p2, and s.
Referenced by FoxWolfMomR().
237 if (order>
FWMAX)
return -1.;
242 if(
fN==0 )
return -1.;
247 for (i=0; i<
fN-1; ++
i)
251 double pmag1 =
p1.Mag();
255 for (j=i+1; j<
fN; ++j)
259 double pmag2 =
p2.Mag();
262 double cosPhi =
cos (
p1.Angle(
p2) );
266 for( l=0; l<=
FWMAX; l++ )
271 for( l=0; l<=
FWMAX; l++ )
279 if( s<=0. )
return -1.;
friend F32vec4 cos(const F32vec4 &a)
std::vector< TLorentzVector > fCmsList
! List of 4-vectors in cms frame
double Legendre(int l, double x)
double RhoEventShapes::FoxWolfMomR |
( |
int |
order | ) |
|
double RhoEventShapes::Legendre |
( |
int |
l, |
|
|
double |
x |
|
) |
| |
|
private |
Definition at line 212 of file RhoEventShapes.cxx.
References fabs(), and x.
Referenced by FoxWolfMomH().
214 if (
fabs(
x)>1.)
return -999.;
223 for(
int ll=2; ll<=l; ll++)
225 double pll = (
x * (2 * ll - 1) * pmmp1 - (ll - 1) * pmm) / (ll);
friend F32vec4 fabs(const F32vec4 &a)
int RhoEventShapes::MultPmaxCms |
( |
double |
pmax | ) |
|
int RhoEventShapes::MultPmaxLab |
( |
double |
pmax | ) |
|
int RhoEventShapes::MultPminCms |
( |
double |
pmin | ) |
|
int RhoEventShapes::MultPminLab |
( |
double |
pmin | ) |
|
int RhoEventShapes::NCharged |
( |
| ) |
const |
|
inline |
double RhoEventShapes::NeutESumCms |
( |
| ) |
const |
|
inline |
double RhoEventShapes::NeutESumLab |
( |
| ) |
const |
|
inline |
double RhoEventShapes::NeutEtSumCms |
( |
| ) |
const |
|
inline |
double RhoEventShapes::NeutEtSumLab |
( |
| ) |
const |
|
inline |
int RhoEventShapes::NNeutral |
( |
| ) |
const |
|
inline |
int RhoEventShapes::NParticles |
( |
| ) |
const |
|
inline |
double RhoEventShapes::Planarity |
( |
| ) |
|
double RhoEventShapes::PmaxCms |
( |
| ) |
const |
|
inline |
double RhoEventShapes::PmaxLab |
( |
| ) |
const |
|
inline |
double RhoEventShapes::Ptmax |
( |
| ) |
const |
|
inline |
double RhoEventShapes::PtSumCms |
( |
| ) |
const |
|
inline |
double RhoEventShapes::PtSumLab |
( |
| ) |
const |
|
inline |
double RhoEventShapes::Sphericity |
( |
| ) |
|
double RhoEventShapes::Thrust |
( |
| ) |
|
Definition at line 155 of file RhoEventShapes.cxx.
References Eps(), fabs(), fCmsList, fN, fthr, fThrVect, and i.
Referenced by ThrustVector().
161 if(
fN==0 )
return -1.;
176 TVector3 nnew(0,0,0);
std::vector< TLorentzVector > fCmsList
! List of 4-vectors in cms frame
friend F32vec4 fabs(const F32vec4 &a)
double Eps(const TVector3 v1, const TVector3 v2)
TVector3 RhoEventShapes::ThrustVector |
( |
| ) |
|
double RhoEventShapes::fapl |
|
private |
TVector3 RhoEventShapes::fBoost |
|
private |
std::vector<int> RhoEventShapes::fCharge |
|
private |
bool RhoEventShapes::fChargedOnly |
|
private |
double RhoEventShapes::fchrgpsumcms |
|
private |
double RhoEventShapes::fchrgpsumlab |
|
private |
double RhoEventShapes::fchrgptsumcms |
|
private |
double RhoEventShapes::fchrgptsumlab |
|
private |
std::vector<TLorentzVector> RhoEventShapes::fCmsList |
|
private |
double RhoEventShapes::fFWmom[FWMAX] |
|
private |
bool RhoEventShapes::fFWready |
|
private |
std::vector<TLorentzVector> RhoEventShapes::fLabList |
|
private |
int RhoEventShapes::fnChrg |
|
private |
double RhoEventShapes::fneutesumcms |
|
private |
double RhoEventShapes::fneutesumlab |
|
private |
double RhoEventShapes::fneutetsumcms |
|
private |
double RhoEventShapes::fneutetsumlab |
|
private |
bool RhoEventShapes::fNeutralOnly |
|
private |
int RhoEventShapes::fnNeut |
|
private |
double RhoEventShapes::fpla |
|
private |
double RhoEventShapes::fpmaxcms |
|
private |
double RhoEventShapes::fpmaxlab |
|
private |
double RhoEventShapes::fptmax |
|
private |
double RhoEventShapes::fptsumcms |
|
private |
double RhoEventShapes::fptsumlab |
|
private |
double RhoEventShapes::fsph |
|
private |
double RhoEventShapes::fthr |
|
private |
TVector3 RhoEventShapes::fThrVect |
|
private |
The documentation for this class was generated from the following files: