HepMC Reference Documentation

HepMC

HepMC::Polarization Class Reference

The Polarization class stores theta and phi for a GenParticle. More...

#include <Polarization.h>

List of all members.

Public Member Functions

 Polarization (double theta=0, double phi=0)
 default constructor
 Polarization (const Polarization &inpolar)
 construct from another polarization object
 Polarization (const ThreeVector &vec3in)
 construct using the polar and azimuthal angles from a ThreeVector
virtual ~Polarization ()
void swap (Polarization &other)
 swap
Polarizationoperator= (const Polarization &inpolar)
 make a copy
bool operator== (const Polarization &) const
 equality requires that theta and phi are equal
bool operator!= (const Polarization &) const
 inequality results if either theta or phi differ
void print (std::ostream &ostr=std::cout) const
 print theta and phi
double theta () const
 returns polar angle in radians
double phi () const
 returns azimuthal angle in radians
ThreeVector normal3d () const
 unit 3 vector for easy manipulation
double set_theta (double theta)
 set polar angle in radians
double set_phi (double phi)
 set azimuthal angle in radians
void set_theta_phi (double theta, double phi)
 set both polar and azimuthal angles in radians
ThreeVector set_normal3d (const ThreeVector &vec3in)
 sets polarization according to direction of 3 vec

Friends

std::ostream & operator<< (std::ostream &, const Polarization &)
 print polarization information


Detailed Description

The Polarization class stores theta and phi for a GenParticle.

HepMC::Polarization stores a particle's theta and phi in radians. Use of this information is optional. By default, the polarization is set to zero.

Definition at line 29 of file Polarization.h.


Constructor & Destructor Documentation

HepMC::Polarization::Polarization ( double  theta = 0,
double  phi = 0 
)

default constructor

Definition at line 11 of file Polarization.cc.

HepMC::Polarization::Polarization ( const Polarization inpolar  ) 

construct from another polarization object

Definition at line 16 of file Polarization.cc.

HepMC::Polarization::Polarization ( const ThreeVector vec3in  ) 

construct using the polar and azimuthal angles from a ThreeVector

Definition at line 21 of file Polarization.cc.

virtual HepMC::Polarization::~Polarization (  )  [inline, virtual]

Definition at line 41 of file Polarization.h.


Member Function Documentation

ThreeVector HepMC::Polarization::normal3d (  )  const

unit 3 vector for easy manipulation

Definition at line 47 of file Polarization.cc.

References phi(), HepMC::ThreeVector::setPhi(), HepMC::ThreeVector::setTheta(), and theta().

bool HepMC::Polarization::operator!= ( const Polarization  )  const [inline]

inequality results if either theta or phi differ

Definition at line 98 of file Polarization.h.

Polarization & HepMC::Polarization::operator= ( const Polarization inpolar  ) 

make a copy

best practices implementation

Definition at line 32 of file Polarization.cc.

References swap().

bool HepMC::Polarization::operator== ( const Polarization  )  const [inline]

equality requires that theta and phi are equal

Definition at line 93 of file Polarization.h.

References phi(), and theta().

double HepMC::Polarization::phi (  )  const [inline]

returns azimuthal angle in radians

Definition at line 87 of file Polarization.h.

Referenced by normal3d(), HepMC::operator<<(), and operator==().

void HepMC::Polarization::print ( std::ostream &  ostr = std::cout  )  const

print theta and phi

Definition at line 39 of file Polarization.cc.

ThreeVector HepMC::Polarization::set_normal3d ( const ThreeVector vec3in  ) 

sets polarization according to direction of 3 vec

Definition at line 72 of file Polarization.cc.

References HepMC::ThreeVector::phi(), set_phi(), set_theta(), and HepMC::ThreeVector::theta().

double HepMC::Polarization::set_phi ( double  phi  ) 

set azimuthal angle in radians

Phi is restricted to be between 0 --> 2pi if an out of range value is given, it is translated to this range.

Definition at line 61 of file Polarization.cc.

Referenced by set_normal3d(), and set_theta_phi().

double HepMC::Polarization::set_theta ( double  theta  ) 

set polar angle in radians

Theta is restricted to be between 0 --> pi if an out of range value is given, it is translated to this range.

Definition at line 55 of file Polarization.cc.

Referenced by set_normal3d(), and set_theta_phi().

void HepMC::Polarization::set_theta_phi ( double  theta,
double  phi 
)

set both polar and azimuthal angles in radians

Definition at line 67 of file Polarization.cc.

References set_phi(), and set_theta().

void HepMC::Polarization::swap ( Polarization other  ) 

swap

Definition at line 26 of file Polarization.cc.

References m_phi, and m_theta.

Referenced by operator=(), and HepMC::GenParticle::swap().

double HepMC::Polarization::theta (  )  const [inline]

returns polar angle in radians

Definition at line 86 of file Polarization.h.

Referenced by normal3d(), HepMC::operator<<(), and operator==().


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  ostr,
const Polarization polar 
) [friend]

print polarization information

Definition at line 107 of file Polarization.cc.


The documentation for this class was generated from the following files:
Generated on Thu Jan 7 13:10:21 2010 for HepMC by  doxygen 1.4.7