ROOT  6.06/09
Reference Guide
Public Types | Public Member Functions | Private Attributes | List of all members
TVector3 Class Reference

Definition at line 27 of file TVector3.h.

Public Types

typedef Double_t Scalar
 
- Public Types inherited from TObject
enum  EStatusBits {
  kCanDelete = BIT(0), kMustCleanup = BIT(3), kObjInCanvas = BIT(3), kIsReferenced = BIT(4),
  kHasUUID = BIT(5), kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13)
}
 
enum  { kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kBitMask = 0x00ffffff }
 
enum  { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) }
 

Public Member Functions

 TVector3 ()
 
 TVector3 (Double_t x, Double_t y, Double_t z)
 
 TVector3 (const Double_t *)
 
 TVector3 (const Float_t *)
 
 TVector3 (const TVector3 &)
 
virtual ~TVector3 ()
 
Double_t operator() (int) const
 dereferencing operator const More...
 
Double_t operator[] (int) const
 
Double_toperator() (int)
 dereferencing operator More...
 
Double_toperator[] (int)
 
Double_t x () const
 
Double_t y () const
 
Double_t z () const
 
Double_t X () const
 
Double_t Y () const
 
Double_t Z () const
 
Double_t Px () const
 
Double_t Py () const
 
Double_t Pz () const
 
void SetX (Double_t)
 
void SetY (Double_t)
 
void SetZ (Double_t)
 
void SetXYZ (Double_t x, Double_t y, Double_t z)
 
void SetPtEtaPhi (Double_t pt, Double_t eta, Double_t phi)
 set Pt, Eta and Phi More...
 
void SetPtThetaPhi (Double_t pt, Double_t theta, Double_t phi)
 set Pt, Theta and Phi More...
 
void GetXYZ (Double_t *carray) const
 
void GetXYZ (Float_t *carray) const
 
Double_t Phi () const
 return the azimuth angle. returns phi from -pi to pi More...
 
Double_t Theta () const
 return the polar angle More...
 
Double_t CosTheta () const
 
Double_t Mag2 () const
 
Double_t Mag () const
 return the magnitude (rho in spherical coordinate system) More...
 
void SetPhi (Double_t)
 Set phi keeping mag and theta constant (BaBar). More...
 
void SetTheta (Double_t)
 Set theta keeping mag and phi constant (BaBar). More...
 
void SetMag (Double_t)
 
Double_t Perp2 () const
 
Double_t Pt () const
 
Double_t Perp () const
 return the transverse component (R in cylindrical coordinate system) More...
 
void SetPerp (Double_t)
 
Double_t Perp2 (const TVector3 &) const
 
Double_t Pt (const TVector3 &) const
 
Double_t Perp (const TVector3 &) const
 return the transverse component (R in cylindrical coordinate system) More...
 
Double_t DeltaPhi (const TVector3 &) const
 
Double_t DeltaR (const TVector3 &) const
 return deltaR with respect to v More...
 
Double_t DrEtaPhi (const TVector3 &) const
 
TVector2 EtaPhiVector () const
 
void SetMagThetaPhi (Double_t mag, Double_t theta, Double_t phi)
 setter with mag, theta, phi More...
 
TVector3operator= (const TVector3 &)
 
Bool_t operator== (const TVector3 &) const
 
Bool_t operator!= (const TVector3 &) const
 
TVector3operator+= (const TVector3 &)
 
TVector3operator-= (const TVector3 &)
 
TVector3 operator- () const
 
TVector3operator*= (Double_t)
 
TVector3 Unit () const
 return unit vector parallel to this. More...
 
TVector3 Orthogonal () const
 
Double_t Dot (const TVector3 &) const
 
TVector3 Cross (const TVector3 &) const
 
Double_t Angle (const TVector3 &) const
 return the angle w.r.t. another 3-vector More...
 
Double_t PseudoRapidity () const
 Double_t m = Mag(); return 0.5*log( (m+fZ)/(m-fZ) ); guard against Pt=0. More...
 
Double_t Eta () const
 
void RotateX (Double_t)
 rotate vector around X More...
 
void RotateY (Double_t)
 rotate vector around Y More...
 
void RotateZ (Double_t)
 rotate vector around Z More...
 
void RotateUz (const TVector3 &)
 NewUzVector must be normalized ! More...
 
void Rotate (Double_t, const TVector3 &)
 rotate vector More...
 
TVector3operator*= (const TRotation &)
 multiplication operator More...
 
TVector3Transform (const TRotation &)
 transform this vector with a TRotation More...
 
TVector2 XYvector () const
 
void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself. More...
 
- Public Member Functions inherited from TObject
 TObject ()
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method. More...
 
virtual void Copy (TObject &object) const
 Copy this to obj. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current pad. More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g. More...
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py). More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual Option_tGetOption () const
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
virtual Bool_t IsSortable () const
 
Bool_t IsOnHeap () const
 
Bool_t IsZombie () const
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout. More...
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. More...
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 
voidoperator new (size_t sz)
 
voidoperator new[] (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz, void *vp)
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
void SetBit (UInt_t f)
 
void ResetBit (UInt_t f)
 
Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
void InvertBit (UInt_t f)
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 

Private Attributes

Double_t fX
 
Double_t fY
 
Double_t fZ
 

Additional Inherited Members

- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 
- Protected Member Functions inherited from TObject
void MakeZombie ()
 
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 

#include <TVector3.h>

+ Inheritance diagram for TVector3:
+ Collaboration diagram for TVector3:

Member Typedef Documentation

Definition at line 31 of file TVector3.h.

Constructor & Destructor Documentation

TVector3::TVector3 ( )

Referenced by Cross(), operator-(), and Orthogonal().

TVector3::TVector3 ( Double_t  x,
Double_t  y,
Double_t  z 
)

Definition at line 177 of file TVector3.cxx.

TVector3::TVector3 ( const Double_t x0)

Definition at line 180 of file TVector3.cxx.

TVector3::TVector3 ( const Float_t x0)

Definition at line 183 of file TVector3.cxx.

TVector3::TVector3 ( const TVector3 p)

Definition at line 174 of file TVector3.cxx.

TVector3::~TVector3 ( )
virtual

Definition at line 186 of file TVector3.cxx.

Member Function Documentation

Double_t TVector3::Angle ( const TVector3 q) const

return the angle w.r.t. another 3-vector

Definition at line 239 of file TVector3.cxx.

Referenced by TLorentzVector::Angle().

Double_t TVector3::CosTheta ( ) const
inline

Definition at line 330 of file TVector3.h.

Referenced by TLorentzVector::CosTheta(), and PseudoRapidity().

TVector3 TVector3::Cross ( const TVector3 p) const
inline
Double_t TVector3::DeltaPhi ( const TVector3 v) const
inline

Definition at line 355 of file TVector3.h.

Double_t TVector3::DeltaR ( const TVector3 v) const

return deltaR with respect to v

Definition at line 422 of file TVector3.cxx.

Referenced by DrEtaPhi().

Double_t TVector3::Dot ( const TVector3 p) const
inline

Definition at line 290 of file TVector3.h.

Referenced by Angle(), TLorentzVector::Et2(), operator*(), Perp2(), and TRotation::RotateAxes().

Double_t TVector3::DrEtaPhi ( const TVector3 v) const
inline

Definition at line 363 of file TVector3.h.

Double_t TVector3::Eta ( ) const
inline

Definition at line 359 of file TVector3.h.

Referenced by DeltaR(), and EtaPhiVector().

TVector2 TVector3::EtaPhiVector ( ) const
inline

Definition at line 368 of file TVector3.h.

void TVector3::GetXYZ ( Double_t carray) const
inline
void TVector3::GetXYZ ( Float_t carray) const
inline

Definition at line 243 of file TVector3.h.

Double_t TVector3::Mag ( ) const
Double_t TVector3::Mag2 ( ) const
inline
Bool_t TVector3::operator!= ( const TVector3 v) const
inline

Definition at line 261 of file TVector3.h.

Double_t TVector3::operator() ( int  i) const

dereferencing operator const

Definition at line 191 of file TVector3.cxx.

Referenced by operator[]().

Double_t & TVector3::operator() ( int  i)

dereferencing operator

Definition at line 208 of file TVector3.cxx.

TVector3 & TVector3::operator*= ( Double_t  a)
inline

Definition at line 283 of file TVector3.h.

Referenced by Rotate().

TVector3 & TVector3::operator*= ( const TRotation m)

multiplication operator

Definition at line 225 of file TVector3.cxx.

TVector3 & TVector3::operator+= ( const TVector3 p)
inline

Definition at line 265 of file TVector3.h.

TVector3 TVector3::operator- ( ) const
inline

Definition at line 279 of file TVector3.h.

TVector3 & TVector3::operator-= ( const TVector3 p)
inline

Definition at line 272 of file TVector3.h.

TVector3 & TVector3::operator= ( const TVector3 p)
inline

Definition at line 250 of file TVector3.h.

Bool_t TVector3::operator== ( const TVector3 v) const
inline

Definition at line 257 of file TVector3.h.

Double_t TVector3::operator[] ( int  i) const
inline

Definition at line 215 of file TVector3.h.

Double_t & TVector3::operator[] ( int  i)
inline

Definition at line 214 of file TVector3.h.

TVector3 TVector3::Orthogonal ( ) const
inline

Definition at line 301 of file TVector3.h.

Referenced by TRotation::MakeBasis().

Double_t TVector3::Perp ( ) const

return the transverse component (R in cylindrical coordinate system)

Definition at line 263 of file TVector3.cxx.

Referenced by TLorentzVector::Perp(), Pt(), SetPerp(), SetPhi(), and Theta().

Double_t TVector3::Perp ( const TVector3 p) const

return the transverse component (R in cylindrical coordinate system)

Definition at line 272 of file TVector3.cxx.

Double_t TVector3::Perp2 ( ) const
inline

Definition at line 312 of file TVector3.h.

Referenced by TLorentzVector::Et2(), Perp(), and TLorentzVector::Perp2().

Double_t TVector3::Perp2 ( const TVector3 p) const
inline

Definition at line 317 of file TVector3.h.

Double_t TVector3::Phi ( ) const

return the azimuth angle. returns phi from -pi to pi

Definition at line 280 of file TVector3.cxx.

Referenced by DeltaPhi(), DeltaR(), EtaPhiVector(), TLorentzVector::Phi(), TQuaternion::Print(), Print(), and SetTheta().

void TVector3::Print ( Option_t option = "") const
virtual

This method must be overridden when a class wants to print itself.

Reimplemented from TObject.

Definition at line 496 of file TVector3.cxx.

Double_t TVector3::PseudoRapidity ( ) const

Double_t m = Mag(); return 0.5*log( (m+fZ)/(m-fZ) ); guard against Pt=0.

Definition at line 370 of file TVector3.cxx.

Referenced by Eta(), and TLorentzVector::PseudoRapidity().

Double_t TVector3::Pt ( ) const
inline

Definition at line 315 of file TVector3.h.

Double_t TVector3::Pt ( const TVector3 p) const
inline

Definition at line 326 of file TVector3.h.

Double_t TVector3::Px ( ) const
inline

Definition at line 223 of file TVector3.h.

Double_t TVector3::Py ( ) const
inline

Definition at line 224 of file TVector3.h.

Double_t TVector3::Pz ( ) const
inline

Definition at line 225 of file TVector3.h.

void TVector3::Rotate ( Double_t  angle,
const TVector3 axis 
)

rotate vector

Definition at line 340 of file TVector3.cxx.

Referenced by TLorentzVector::Rotate().

void TVector3::RotateUz ( const TVector3 NewUzVector)

NewUzVector must be normalized !

Definition at line 349 of file TVector3.cxx.

Referenced by TLorentzVector::RotateUz().

void TVector3::RotateX ( Double_t  angle)

rotate vector around X

Definition at line 307 of file TVector3.cxx.

Referenced by TLorentzVector::RotateX().

void TVector3::RotateY ( Double_t  angle)

rotate vector around Y

Definition at line 318 of file TVector3.cxx.

Referenced by TLorentzVector::RotateY().

void TVector3::RotateZ ( Double_t  angle)

rotate vector around Z

Definition at line 329 of file TVector3.cxx.

Referenced by TLorentzVector::RotateZ().

void TVector3::SetMag ( Double_t  ma)
inline
void TVector3::SetMagThetaPhi ( Double_t  mag,
Double_t  theta,
Double_t  phi 
)

setter with mag, theta, phi

Definition at line 432 of file TVector3.cxx.

void TVector3::SetPerp ( Double_t  r)
inline

Definition at line 347 of file TVector3.h.

Referenced by TLorentzVector::SetPerp().

void TVector3::SetPhi ( Double_t  ph)

Set phi keeping mag and theta constant (BaBar).

Definition at line 412 of file TVector3.cxx.

Referenced by TLorentzVector::SetPhi().

void TVector3::SetPtEtaPhi ( Double_t  pt,
Double_t  eta,
Double_t  phi 
)

set Pt, Eta and Phi

Definition at line 382 of file TVector3.cxx.

void TVector3::SetPtThetaPhi ( Double_t  pt,
Double_t  theta,
Double_t  phi 
)

set Pt, Theta and Phi

Definition at line 390 of file TVector3.cxx.

void TVector3::SetTheta ( Double_t  th)

Set theta keeping mag and phi constant (BaBar).

Definition at line 400 of file TVector3.cxx.

Referenced by TLorentzVector::SetTheta().

void TVector3::SetX ( Double_t  xx)
inline

Definition at line 227 of file TVector3.h.

Referenced by TQuaternion::operator/=(), SetMag(), SetPhi(), SetTheta(), and TLorentzVector::SetX().

void TVector3::SetXYZ ( Double_t  x,
Double_t  y,
Double_t  z 
)
inline
void TVector3::SetY ( Double_t  yy)
inline

Definition at line 228 of file TVector3.h.

Referenced by TQuaternion::operator/=(), SetMag(), SetPhi(), SetTheta(), and TLorentzVector::SetY().

void TVector3::SetZ ( Double_t  zz)
inline

Definition at line 229 of file TVector3.h.

Referenced by TQuaternion::operator/=(), SetMag(), SetTheta(), and TLorentzVector::SetZ().

Double_t TVector3::Theta ( ) const

return the polar angle

Definition at line 288 of file TVector3.cxx.

Referenced by TQuaternion::Print(), Print(), and TLorentzVector::Theta().

TVector3 & TVector3::Transform ( const TRotation m)

transform this vector with a TRotation

Definition at line 232 of file TVector3.cxx.

Referenced by TLorentzVector::Transform().

TVector3 TVector3::Unit ( ) const

return unit vector parallel to this.

Definition at line 296 of file TVector3.cxx.

Referenced by TLorentzVector::Et2().

Double_t TVector3::x ( ) const
inline
Double_t TVector3::X ( ) const
inline
TVector2 TVector3::XYvector ( ) const
inline

Definition at line 372 of file TVector3.h.

Double_t TVector3::y ( ) const
inline
Double_t TVector3::Y ( ) const
inline
Double_t TVector3::z ( ) const
inline
Double_t TVector3::Z ( ) const
inline

Member Data Documentation

Double_t TVector3::fX
private
Double_t TVector3::fY
private
Double_t TVector3::fZ
private

The documentation for this class was generated from the following files: