520 #if ROOT_VERSION_CODE >= ROOT_VERSION(3,4,0)
652 return (phi < 0 ? 360. + phi : phi);
#define ClassDef(name, id)
Kinematical representation of a particle in different reference frames.
Extended TList class which owns its objects by default.
Handles lists of named parameters with different types, a list of KVNamedParameter objects.
void SetValue(const Char_t *name, value_type value)
void RemoveParameter(const Char_t *name)
Handles particle selection criteria for data analysis classes ,.
Base class for relativistic kinematics of massive particles.
Double_t GetWaveLength() const
void AddGroups(KVUniqueNameList *un)
list of groups added to the current one
Double_t GetThermalWaveLength(Double_t temp) const
void SetIsOK(Bool_t flag=kTRUE)
void SetTheta(Double_t theta)
TVector3 * GetPInitial() const
Double_t GetREtran() const
virtual void SetMass(Double_t m)
void RemoveGroup(const Char_t *groupname)
void AddGroup(const Char_t *groupname, const Char_t *from="")
void SetPhi(Double_t phi)
KVUniqueNameList * GetGroups() const
return the KVUniqueNameList pointeur where list of groups are stored
TVector3 GetMomentum() const
KVUniqueNameList fGroups
list of TObjString for manage different group name
KVNameValueList * GetParameters() const
void SetXYZT(Double_t x, Double_t y, Double_t z, Double_t t)
Double_t GetTheta() const
KVParticle & operator=(const KVParticle &rhs)
KVParticle assignment operator.
void SetVectM(const TVector3 &spatial, Double_t mass)
const Char_t * GetFrameName(void) const
void SetMomentum(const TVector3 &v)
virtual void AddGroup_Withcondition(const Char_t *, KVParticleCondition *)
void SetVelocity(const TVector3 &)
Set velocity of particle (in cm/ns units)
Bool_t HasFrame(const Char_t *frame)
const Char_t * GetName() const
return the field fName
void SetRho(Double_t rho)
Double_t GetEnergy() const
Double_t GetTransverseEnergy() const
void SetVectMag(const TVector3 &spatial, Double_t magnitude)
Double_t GetLongitudinalEnergy() const
void SetKE(Double_t ecin)
virtual void Clear(Option_t *opt="")
Reset particle properties i.e. before creating/reading a new event.
KVList fBoosted
list of momenta of the particle in different Lorentz-boosted frames
void ls(Option_t *option="") const
void init()
default initialisation
KVNameValueList fParameters
a general-purpose list of parameters associated with this particle
Double_t GetCosTheta() const
void SetPxPyPzE(Double_t px, Double_t py, Double_t pz, Double_t e)
Double_t GetRTransverseEnergy() const
void SetMomentum(const TVector3 *v)
Double_t GetElong() const
virtual void Copy(TObject &) const
KVList * GetListOfFrames(void)
void Set4Mom(const TLorentzVector &p)
KVKinematicalFrame * get_parent_frame(const Char_t *, KVKinematicalFrame *F=nullptr) const
virtual void Print(Option_t *t="") const
print out characteristics of particle
KVParticle InFrame(const KVFrameTransform &)
void SetE0(TVector3 *e=0)
TString fFrameName
non-persistent frame name field, sets when calling SetFrame method
void SetParameter(const Char_t *name, ValType value) const
Int_t GetNumberOfDefinedFrames(void)
void SetFrameName(const Char_t *framename)
static Double_t kSpeedOfLight
speed of light in cm/ns
void SetXYZM(Double_t x, Double_t y, Double_t z, Double_t m)
void SetName(const Char_t *nom)
Set Name of the particle.
void SetFrame(const Char_t *frame, const KVFrameTransform &)
KVParticle const * GetFrame(const Char_t *frame, Bool_t warn_and_return_null_if_unknown=kTRUE) const
void ChangeFrame(const KVFrameTransform &, const KVString &="")
void SetGroups(KVUniqueNameList *un)
Bool_t BelongsToGroup(const Char_t *groupname) const
TVector3 * fE0
the momentum of the particle before it is slowed/stopped by an absorber
void ChangeDefaultFrame(const Char_t *, const Char_t *defname="")
void SetRandomMomentum(Double_t T, Double_t thmin, Double_t thmax, Double_t phmin, Double_t phmax, Option_t *opt="isotropic")
Int_t GetNumberOfDefinedGroups(void)
return the number of defined groups for the particle
void SetPtEtaPhiM(Double_t pt, Double_t eta, Double_t phi, Double_t m)
TString fName
non-persistent name field - Is useful
KVKinematicalFrame * get_frame(const Char_t *) const
void SetEnergy(Double_t e)
virtual void AddGroup_Sanscondition(const Char_t *groupname, const Char_t *from="")
void ListGroups(void) const
List all stored groups.
TVector3 GetVelocity() const
returns velocity vector in cm/ns units
Double_t GetVperp() const
Double_t GetEtran() const
void SetVect(const TVector3 &vect3)
TLorentzVector setters should not be used.
TVector3 GetTransverseMomentum() const
void SetPtEtaPhiE(Double_t pt, Double_t eta, Double_t phi, Double_t e)
void print_frames(TString fmt="") const
recursive print out of all defined kinematical frames
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
Optimised list in which named objects can only be placed once.
void SetXYZT(Double_t x, Double_t y, Double_t z, Double_t t)
void SetPtEtaPhiE(Double_t pt, Double_t eta, Double_t phi, Double_t e)
void SetPtEtaPhiM(Double_t pt, Double_t eta, Double_t phi, Double_t m)
void SetPhi(Double_t phi)
void SetRho(Double_t rho)
void SetVectMag(const TVector3 &spatial, Double_t magnitude)
void SetPxPyPzE(Double_t px, Double_t py, Double_t pz, Double_t e)
void SetTheta(Double_t theta)
void SetVect(const TVector3 &vect3)
void SetVectM(const TVector3 &spatial, Double_t mass)
void SetXYZM(Double_t x, Double_t y, Double_t z, Double_t m)
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
Double_t Power(Double_t x, Double_t y)
constexpr Double_t DegToRad()
Double_t Sqrt(Double_t x)
constexpr Double_t RadToDeg()
constexpr Double_t TwoPi()